1. float i = 5.0;是一个错误的语句.
错误原因:java对浮点数默认为double类型
解法1:float i = 5.0f; 在5.0后加一个f
解法2:double i = 5.0; 将float改为double
解法3:float i = (float) 5.0; 强制转换为float
2. 以;结尾的一段代码,即为一个表达式.
另:一个空;也是一个表达式
3. 给基本类型的变量赋值的方式叫做字面值。
如下所例:
float hp = 313f;
int armor = 24;
4. 不同类型之间的数据可以互相转换,但是要满足一定的规则.
精度高的数据类型就像容量大的杯子,可以放更大的数据
精度低的数据类型就像容量小的杯子,只能放更小的数据
小杯子往大杯子里倒东西,大杯子怎么都放得下
大杯子往小杯子里倒东西,有的时候放的下,有的时候就会有溢出
需要注意的一点是
虽然short和char都是16位的,长度是一样的
但是彼此之间,依然需要进行强制转换
5. public class HelloWorld {
public void method1(final int j) {
j = 5; //这个能否执行?
}
}
答:不能执行,因为final只能赋值一次,而这一次肯定在调用时使用掉的。在main函数中写new HelloWorld().method1(10)就使用了。
6. 从{ 开始 到对应的} 结束,即一个块
例:public class HelloWorld { //类对应的块
public static void main(String[] args) { //主方法对应的块
System.out.println(“abc”);
}
}
7. 在外部循环的前一行,加上标签
在break的时候使用该标签
即能达到结束外部循环的效果
public class HelloWorld {
public static void main(String[] args) {
//打印单数
outloop: //outloop这个标示是可以自定义的比如outloop1,ol2,out5
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
System.out.println(i+":"+j);
if(0==j%2)
break outloop; //如果是双数,结束外部循环
}
}
}
8 如果定义了一个数组但是没有赋值,那么默认数组的元素都是0.
9 final的使用
i)当一个类被final修饰时,表示该类不能被继承
ii)当类的方法被final修饰时,表示该类不能被其子类所重写
iii)当基本变量被final修饰时,表示该变量只能被赋值一次
iv)当引用被final修饰时,表示该引用只有一次指向对象的机会