变量的类型:
数值型:整型(byte,short,int,long)、浮点型(float,double)
非数值型:布尔类型(boolean),字符型(char),字符串类型(String),其他引用型
面试题1:java中,八大基本数据类型有哪些?
数值型:整型(byte,short,int,long)、浮点型(float,double)
非数值型:布尔类型(boolean),字符型(char)
1、赋值运算符 =
变量 变量类型 变量名 = 变量值;
常量 final 常量类型 常量名 = 常量值;
变量名规范: name 45asd aaa a_aa loginName
name2 _asda $asda admin asd
2、算术运算符 + - * / % ++ -- += -= *= /=
int a = 1;
int sum = (a++) + (++a) + (a--) + (++a) + (--a) + (a++) + (a--);
17 1 3 3 3 2 2 3
int a = 1;
int b = 2;
b += a; b = b+a;
int a = 1;
double aa = a;
自动类型转换:1、类型可以兼容 2、目标类型大于源类型
double b = 2.1;
int bb = (int)b;
强制类型转换:1、类型可以兼容 2、目标类型小于源类型
3、关系运算符
4、逻辑运算符
5、位运算符
6、条件运算符位运算符
基本数据类型,在做关系运算时:直接将变量值进行比较运算
引用型数据类型,在做关系运算时:比较的是地址
面试题2:==和equals的区别
1、 ==通常做数值的相等关系比较,
equals通常做引用型数据类型的相等比较
2、 ==比较的是变量的地址是否是同一个地址
equals比较的是变量指向的值是否是相同的
面试题3:如何以最快的方式求出2的3次方?
System.out.print(2<<2);
面试题4:6&7=6 6|7=7
110 110
&111 |111
110 111
面试题5:&和&&的区别
1、&表示逻辑且,无论第一个操作数是否为true,第二个操作数都执行
&&表示短路且,第一个操作数为false时后面操作数不执行,结果返回false
2、&还可以用作位运算,&&只能做逻辑运算
逻辑运算符:或、且、非
或: |逻辑或 ||短路或
且: &逻辑且 &&短路且
(4>3)||(3>4) =>true:
或运算:只要有一个为true,整个结果为true
(3>4)&&(4>3) =>false:
且运算:只要有一个为false,整个结果为false