动手动脑
枚举:
public class EnumTest {
public static void main(String[] args) {
Size s=Size.SMALL;
Size t=Size.LARGE;
//s和t引用同一个对象?
System.out.println(s==t); //
//是原始数据类型吗?
System.out.println(s.getClass().isPrimitive());
//从字符串中转换
Size u=Size.valueOf("SMALL");
System.out.println(s==u); //true
//列出它的所有值
for(Size value:Size.values()){
System.out.println(value);
}
}
}
enum Size{SMALL,MEDIUM,LARGE};
运行截图:
枚举类型不属于原始数据类型,他的每个具体值都引用一个特定的对象,相同的值则引用同一个对象,枚举是可以从字符串中转换的。
枚举类型基本用法:
1. Size s=Size.SMALL;
Size t=Size.LARGE; /从字符串转换为枚举
在上例可知s和t没有引用同一个对象。
2. 枚举类型是引用类型,不是原始数据类型。
在上例中将字符串转化成枚举类型后s和t 不是原始数据类型。
(int、float等这些数据类型称为“原始数据类型(primitive type)”。)
3. Size u=Size.valueOf("SMALL"); //u是从字符串中转化的数据类型
Size s=Size.SMALL;
由运行结果可以看到u和s相等。
4. 枚举类型的foreach迭代
for(Size value:Size.values())
{
System.out.println(value);
}
//顺序输出所有值
注意:枚举类型也可以用于switch语句
原码就是符号位加上真值的绝对值,即用第一位表示符号,其余位表示值。
反码的表示方法是: 正数的反码是其本身,负数的反码是在其原码的基础上,符号位不变,其余各个位取反。
补码的表示方法是:正数的补码就是其本身,负数的补码是在其原码的基础上,符号位不变,其余各位取反,最后+1 (即在反码的基础上+1)。
代码:
package dong;
public class dong {
public static void main(String[] args) {
int x=100;
int y=200;
System.out.println("x+y="+x+y);
System.out.println(x+y+"=x+y");
}
}
运行截图
两个+号意义不同,一个是连接运算符,一个是加法运算字符。
运到问题:暂无