6月18日课堂心得

源文件(*.Java文件)-->Java编译器-->字节码(*.class文件)
-->类装载器-->字节码校验器-->解释器-->操作系统平台


先加载启动类库、在加载扩展类库、最后加载用户自定义类库。
正常的类加载顺序可以避免一些非法代码的执行,并可以提高代码执行的安全性


浮点常量默认是double类型,不能直接赋值给float


字符型char是以整型方式存放在内存中。所以char可以参与运算。char类型表示
方式:'a'。注意在''只能放一个字符。'ABC'不允许。
'A'-->65  'a'--97
char类型运算时,将asc码和数字运算。
char类型采用unicode编码,占两个字节。可以存放中文字。'中','美'。


布尔值表示逻辑运算,判断一个条件是否满足。满足为true,不满足为false。




类型转换:
1、自动类型转换。
   当小类型和大类型运算时,会自动将小类型转换为大类型,再运算。
   1+2.1-->会将1转换为double 1.0然后再和2.1运算
   boolean/byte<short(char)<int<long<float<double
   其中float比long更大,float拥有整数和小数两个部分,而long只有整数部分。
   整型和整型运算,其结果至少是int
   byte b1 = 1 ; byte b2 = 2; byte b3 = b1+b2
   (以上语句编译错误。byte+byte结果是Int,大类型不能赋值给小类型)
2、强制类型转换。  
   一般用于大类型强制转换为小类型,可能损失精度。
   int x = (int)2.3;   float f = (float)3.2;


=和==的区别:
=是赋值,也就是把一个值存放到一个变量中。
Int x =9;其含义是将9值赋值给x。
==是比较,也就是比较两个表达式是否相等。其结果是boolean


&&并且,只有两个同时满足,结果才满足,如果有一个不满足,结果也不满足。


多个if和if....else if的区别

多个if是多条语句,没一个条件满足后,后面的else if全部忽略

类型转换的练习
int i=1,j;---正确
float f1=0.1;---错误,需要强制类型转换;float  f1 =(float)0.1
float f2=123;---正确。
double d1=2e20,d2=124;---正确
byte b1=1,b2=2,b3=129;---错误,因为byte的值是-128~127
j=j+10;---错误,因为j没有确定的赋值
i=i/10;---正确
i=i*0.1;---错误,0.1是double类型不能赋给小类型
char c1='a',c2=125;----正确
byte b=b1-b2;----错误,因为整数和整数运算至少是Int,所以不能赋给byte
char c=c1+c2-1;---错误,大类型不能赋值给小类型
float f3=f1+f2;----正确,float+float=float
float f4=f1+f2*0.1;--错误,0.1是double类型不能赋值给float
double d=d1*i+j;---错误,j没有赋值
float f=(float)(d1*5+d2);--正确,因为强制转换了类型
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值