参数传递
Java 的参数是以值传递的形式传入方法中,而不是引用传递
float 与 double
Java 不能隐式执行向下转型,因为这会使精度下降
1.1字面量属于 double 类型,不能直接将1.1赋值给 float 变量,因为这是向下转型
1 | //float f = 1.1; 不能直接向下转型 |
1.1f 字面量才是 float 类型。
1 | float f = 1.1f; |
隐式类型转换
因为字面量 1 是 int 类型,它比 short 类型精度要高,因此不能隐式地将 int 类型向下转型为 short 类型。
1 | short s1 = 1; |
但是使用 += 或者 ++ 运算符会执行隐式类型转换。
1 | s1 += 1; |
上面的语句相当于将 s1 + 1 的计算结果进行了向下转型:
1 | s1 = (short) (s1 + 1); |
switch
从 Java 7 开始,可以在 switch 条件判断语句中使用 String 对象。
1 | String s = "a"; |
另外:switch 不支持 long