//这些是我个人认为容易错误的地方,应该注意。希望能对java初学者有一定的帮助
public class Practice {
public static void main(String[] args){
int i = (int)3.14;//不加(int)错误,java 是强类型语言
boolean j = false;
System.out.println("j="+ j );
System.out.println("i = "+i);
//运算符 + 不能应用于 boolean,short
//System.out.println(j+1);
//java中不存在字节直接变量,但我们可以使用适当的整数直接量,直接提供8位的数值,而无
public static void main(String[] args){
int i = (int)3.14;//不加(int)错误,java 是强类型语言
boolean j = false;
System.out.println("j="+ j );
System.out.println("i = "+i);
//运算符 + 不能应用于 boolean,short
//System.out.println(j+1);
//java中不存在字节直接变量,但我们可以使用适当的整数直接量,直接提供8位的数值,而无
//需进行强制类型装换
byte b1 = 1, b2 = 2;
byte b1 = 1, b2 = 2;
//java 总是按至少32位的精度执行算数运算,这意味着当我们为字节变量复值时,
//如果其中包含算术运算,必须总是对运算结果进行强制类型转换
//byte b3 = b1+b2;
//如果其中包含算术运算,必须总是对运算结果进行强制类型转换
//byte b3 = b1+b2;
byte b3=(byte)(b1+b2);
System.out.println("byte b3 = "+b3);
//java中不存在短整型直接变量,但我们可以使用适当的整数直接量,直接提供16位的值,
//而无需进行强制类型装换
short shortNum1 = 32767,shortNum2 = 4;
//short shortNum3=shortNum1+shortNum2;错,short 2字节,原因同字节类型,见上
short shortNum3 = (short)(shortNum1+shortNum2);
System.out.println("shortNum: "+shortNum3);
}
}
short shortNum1 = 32767,shortNum2 = 4;
//short shortNum3=shortNum1+shortNum2;错,short 2字节,原因同字节类型,见上
short shortNum3 = (short)(shortNum1+shortNum2);
System.out.println("shortNum: "+shortNum3);
}
}
/*practice.java:5: 不可转换的类型
找到: int
需要: boolean
boolean j=(boolean)1;
^
practice.java:7: 找不到符号
符号: 方法 sizeof(boolean)
位置: 类 Practice
System.out.println(sizeof(j));
^
1 错误
1 错误
D:\JAVA>javac practice.java
practice.java:8: 运算符 + 不能应用于 boolean,int
System.out.println(j+1);
*/
practice.java:8: 运算符 + 不能应用于 boolean,int
System.out.println(j+1);
*/