这章内容很基础,只要是学过C语言的都会很容易上手,下面是摘自本章的一点新知识
静态导入(static import)
通过使用 import static,就可以不用指定类名而直接使用静态成员,包括静态方法,通过静态导入可以简化对多个类常量的调用
public class ReportConstant {
public static final String NEWLINE = System.getProperty("line.separator");
}
import static sis.report.ReportConstant.NEWLINE;
别名现象(多个引用指向同一个对象)
"=="和equals()
对于基本数据类型,"=="比较的是值,而针对对象,比较的则是引用。当需要比较对象的值时,则要调用所有对象都适用的方法equals()(该方法继承至Object类,默认比较引用)。大多数java类库都实现了equals方法,以便比较两个对象的内容。如果创建了自己的类,则需要覆盖equals方法
逻辑运算中的"短路"现象
不仅是c,Java中的逻辑运算也存在短路现象
直接常量的后缀字符
long n1 = 200L; //或200l,大小写没有区别
float f1 = 1F;
1.39e-43 在java中代表1.39 * 10-43次,而非1.39 * 2.718-43次
System.out.println(x=y); 会输出y的值
窄化转换
在执行窄化转换(narrowing conversion)时,如float,double-->int,总是进行截尾(0.7,0.4->0).如果想要得到舍入结果,则需Math.round(0.7)->1,Math.round(0.4)->0.