变量:
变量是一块命了名的内存空间。空间的内存可以不断变化,通过不断的用新数据去替换老数据,达到内存重用的目的。
三要素:变量数据类型、变量名、变量值
常量:
常量是内存中一块命了名的空间,但是空间的内容不能在运行期间发生变化。
用final+变量类型+ 变量名+ = + 变量值的方式命名,如:final int A =10;
好处:1)可以引入业务名称
2)可以做到一改全改
字符类型采用unicode编码,占两个字节。
4、类型转换有几种方式?
分为1)自动类型转换:将小容量类型自动提升为大容量类型,小类型可以直接赋值给大类型,反过来就不行可能会溢出。
2)强制类型转换:将一个类型强制转换成另一个类型,一般发生在大类型转换成小类型时,能会损失精度。
5、=和==的区别
=是赋值的意思,如int a =8,创建a变量,将8存放在a变量所在的空间中;
==是比较的意思,如a==8,将变量a的内容取出来和8进行比较是否相等。
6、以下表达式哪些编译有错误?为什么
public void method(){
int i=1,j; //注意:j未进行赋值,当后面程序调用j时会提示异常
float f1=0.1; //0.1是double类型,不能直接转换成float类型
float f2=123;
double d1=2e20,d2=124;
byte b1=1,b2=2,b3=129; //byte的值范围在-128到127,129已超出byte的范围
j=j+10; //j未进行初始化赋值,不能直接调用
i=i/10;
i=i*0.1; //0.1是double类型,i*0.1为double类型,不能直接转换成int类型
char c1='a',c2=125;
byte b=b1-b2; //b1-b2是int类型,不能直接转换成byte类型
char c=c1+c2-1; //c1+c2-1是int类型,不能直接转换成char类型
float f3=f1+f2; //f1+f2是double类型,不能直接转换成float类型
float f4=f1+f2*0.1; //f1+f2*0.1是double类型,不能直接转换成float类型
double d=d1*i+j; // j未进行初始化赋值,不能直接调用
网友评论