变量与数据类型

1 注释 annotation

注释是为了便于阅读源代码,不会编译到字节码文件中。建议每个类,每个方法都要加上注释,显示该怎么使用。
       单行注释: //
       多行注释: /*    */
       文档注释: /**  **/  用于生成API

2 标识符 identifier

       1. Java的标识符可以是字母,数字,下划线(_)和$随意组合。
       2. Java的标识符不能以数字开头。
       3. Java的标识符不能是Java的关键字和保留字。
       4. Java的标识符建议遵守驼峰命名法。
       5. Java的标识符建议做到见名知义。
注意:Java使用的是Unicode字符集,故而汉字,日文,韩文都属于字母。
类名:          首字母大写,驼峰命名法
方法名:       首字母小写,驼峰命名法
变量名:       首字母小写,驼峰命名法
常量名:    全部大写
包名:      全部小写,以 . 隔开

3.变量 variable

变量:可操作的存储空间,通过变量名称访问这个存储空间,从而操纵这个空间的值。
       分配一片内存空间,空间的大小由数据类型确定。例如:int 4个字节 long 8个字节。
变量的声明:   数据类型  变量名;   例如: int age;
虽然可以一行定义多个变量,逗号隔开,但是不建议。例如 : int age , num;
变量的初始化: 变量名 = 值;   例如 age = 18;
变量的声明和初始化可以同时进行  数据类型 变量名 = 值; 例如: int age = 18;
变量分类:成员变量(member variable)局部变量(local variable)静态变量(static variable)
成员变量会自动初始化, 数值类型初始化为0,布尔类型初始化为false,引用数据类型初始化为null
注意:   变量的数据类型可以是基本数据类型,也可以是引用数据类型。
变量名必须是合法的标识符,满足首字母小写和驼峰命名法,做到见名知义。
变量必须声明和初始化以后,才可以使用,否则会报错。

4 作用域 action scope

       成员变量的作用域是整个类中
       局部变量的作用域是语句块(通常是方法块)
       静态变量的作用域和修饰符有关

5 常量 constant

常量:不能改变的量,final关键字修饰的变量,只能赋值一次,不能多次赋值。
 

 

6 数据类型 data type

 
byte
short
int
long
float
double
boolean
char
1bytes
2bytes
4bytes
8bytes
4bytes
8bytes
4bytes/1bit
2bytes
Byte
Short
Integer
Long
Float
Double
Boolean
Character
 
注释: java虚拟机中没有boolean类型,会将其转换为int类型(根据java虚拟机规范)
          1个字节8位,负数比正数多一个,0的补码是0000 0000。
          long类型的常量,数值的尾部需要加上L或l
          float类型的常量,数值的尾部需要加上F或f
          正常为十进制,二进制:0b开头,八进制:0开头,十六进制:0x开头

7 科学记数法 scientific notation

       java中的科学计数法以E作为分割符  
              例:20E10  20乘以10的10次方  2E-2  2乘以10的-2次方。  

8 高精度数字BigInteger BigDecimal

       由于Java的基本数据类型中的float和double的精度比较低,对于某些需要高精度数字的行业,我们需要使用java.math包中的2个类: BigInteger和BigDecimal。
       高精度数字可以进行加减乘除以及精度选择等操作,可以转换为各种数值类型。
       这2个类都继承自java.lang.Number类,实现了Comparable接口。
父类Number类实现了Serializable接口
Serializable用于序列化,Comparable用于比较大小

9 转义字符 escape character

       常用转义字符
1.八进制转义序列:\ + 1到3位5数字;范围'\000'~'\377'
2.Unicode转义字符:\u + 四个十六进制数字;0~65535
3.特殊字符:
\":双引号          \':单引号           \\:反斜线
4.控制字符:
      \' 单引号字符       \\ 反斜杠字符      \r 回车                 
\n 换行                \b 退格
\f 走纸换页          \t 横向跳格

10 运算符分类 operational charact

11 强制类型转换

       java中存在自动类型转换,在容量小的往容量大的数据类型转换的过程中,精度不会丢失,故而可以进行自动转换。(整型常量可以赋值给byte, short, int, long。只要不超过其表示范围,可以直接赋值)
       1:byte -> short -> int –> long -> double
       2:float -> double
       3:char -> int
       int 和 long 转化为float的时候,可能会存在精度丢失问题
java中将容量大的转换为容量小的,可能会造成精度丢失问题,故而,不允许自动类型转换,这种情况下,只能使用强制类型转换。
格式   (type) variable
浮点数强转为整数,会丢失精度(截取整数部分)
注意:如果2个int类型的操作数的乘积的值超过了int可表示的范围,那么应当将其中一个操作数先强制转换为long类型,避免发生操作数溢出(不准确)的问题。
posted @ 2020-03-30 17:42  linglongfang  阅读(183)  评论(0)    收藏  举报