java一共有八大数据类型,四个整型,两个浮点型,一种用于表示Unicode编码的字符单元的数据类型char和一种用于表示真值的boolean类型。
注意:从java7开始,加上前缀0b或0B就可以写二进制数
注意: long类型的最后面需要加个L或l
char类型的值可以表示位十六进制值,范围从\u0000到\Uffff,例如\u2122表示注册号(TM)。\u03C0表示希腊字母π。需要注意的是,char类型无视任何位置,只要在文档中,他就会执行。
double salary;
int vacationDays;
变量名中所有的字符都是有意义的,并且大小敏感。另外,不能使用Java保留字作为变量名,可以在一行中声明多个变量
其中,++和--和-=和+=运算符的示例如下;
public class FirstSample { public static void main(String[] args) { int x = 3; System.out.println(x++); //3 System.out.println(x); //4 System.out.println(x--); //4 System.out.println(x); //3 System.out.println(++x); //4 System.out.println(x); //4 System.out.println(--x); //3 System.out.println(x); //3 x+=5; System.out.println(x); //8 x-=3; System.out.println(x); //5 } }习惯上,常量名使用全大写,公共的常量要加static 和 final防止被改变。
在mian方法中的所有指令都将使用严格的浮点运算,如果将一个类标记为sctrctfp,这个类中的所有方法都要使用严格的浮点运算。例如:
public static strictfp void main(String[] args) {}C: 画图解释byte+int类型的问题
首先, 我们知道byte在内存中占一个字节, 而一个字节等于8个比特位(二进制位). 1 byte = 8 bit
int在内存里是占四个字节.
因为127的二进制数值为 01111111 补码还是它本身
1的二进制数为00000001 补码还是它本身
两者相加 得10000000 减一 得 11111111 然后原码得 10000000
因为128在二进制里和0里表示同一个数,所以最后的结果为-128.
关系运算符有 == (检测相等)!=(不等)>(大于)<(小于)>=(大于等于)<=(小于等于)还有&&(与)和||(或)运算符。
int k = 9; int j = 8; int s = 9; System.out.println(k == j); //false System.out.println(k == s); //true System.out.println(!(k == s)); //false //&&表示两个都是true才是true //||表示有一个为true才是true System.out.println(k == 9 && j == 9); //false System.out.println(k == 9 || j == 9); //true然后是三元运算符。就是 a?b c:d 就是判断?的真假,如果为真则返回c,否则返回d,例如
System.out.println((8 > 9) ? 3 : 8); //8处理整数类型时,可以直接对组成整数值的各个位完成操作。这些运算符为&(and)、|(or)、^(xor)、~(not)
例如,
int g = (127 & 0b1000); System.out.println(g);相当于
01111111
+ 00001000
-------------------------
00001000
所以他的输出为8;
另外,还有>> 和 << 运算符可以将二进制的位数移动,例如
System.out.println(128 >> 3); System.out.println(128 << 3);相当于 10000000 将1向由移动3位, 变成 00010000,相当于16
10000000 将1向左移动三位,变成 100 00000000,相当于1024
有时候,变量的取值只在一个有限的集合内。例如:销售的服装或比萨饼只有小、中、大和超大这四种尺寸。当然,可以将这些尺寸分别编码为1、2、3、4或S、M、L、X。但这样存在着一定的隐患。在变量中很可能保存的是个错误的值 ( 如0或m)。
针对这种情况,可以自定义枚举类型。枚举类型包括有限个命名的值。例如
public enum Size { S,M,L,XL,XXL,XXXL } Size s = Size.XXL; system.out.println(s); 输出结果为XXL。这样的枚举类型比较方便。安全性高。