动手动脑
一、EnumTest.java
package day02;
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)类 class isPrimitive()方法
2)System.out.println(s.getClass().isPrimitive());
3)Size u=Size.valueOf("SMALL");
4)or(Size value:Size.values())
{
System.out.println(value);
}
5)enum Size{SMALL,MEDIUM,LARGE};
6)System.out.println()
(摘自: https://blog.csdn.net/weixin_30251587/article/details/96731005 )
结论:
枚举类型的使用是借助 ENUM 这样一个类,这个类是 JAVA 枚举类型的公共基本类。枚举目的就是要让某个变量的取值只能为若干固定值中的一个。
枚举类型是引用类型。(除了八种基本类型外其他都是引用类型)
枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象,相同的值则引用同一个对象。
可以使用“==”和equals() 方法直接比对枚举变量的值。
二、数值的二进制表示:弄清楚反码、补码和原码这几个概念,然后编写示例程序,对正数、负数进行各种位操作,观察输出结果,与手工计算的结果进行比对,看看Java中的数是采用上述哪种码表示的
反码:正数的反码还是等于原码;负数的反码就是他的原码除符号位外,按位取反。
补码:正数的补码等于他的原码,负数的补码等于反码+1。
原码:是最简单的机器数表示法。用最高位表示符号位,‘1’表示负号,‘0’表示正号。其他位存放该数的二进制的绝对值。
首先先猜想是由原码表示,程序验证
1 int a=1;
2 int b=-1;
3 int sum=a+b;
4 System.out.println(sum);
可知程序的结果为0,而在二进制中00000001+10000001=10000010,换算成十进制为-2。显然出错,故java中数值并非是由原码储存
同理,在使用反码表示时,也会出现同样的问题: (00000001) 反+ (11111110)反 = (11111111)反 = ( -0 )
而在补码中这没有这个问题:(00000001)补 + (11111111)补 = (00000000)补 = ( 0 )
结论:在java中,数值是由补码表示的
(摘自: https://www.cnblogs.com/heiyang/p/9748054.html )
三、Addition.java (两数相加)
package day02;
import javax.swing.JOptionPane;
public class Addition {
public static void main(String[] args) {
String firstNumber;// first string entered gy user
String secondNumber;// second string entered by user
int number1; // first number to add
int number2;// second number to add
int sum;// sum of number1 and number2
// read in first number from user as a string
firstNumber = JOptionPane.showInputDialog("Enter first integer");
// read in second number from user as a string
secondNumber = JOptionPane.showInputDialog("Enter second integer");
// convent numbers from type String to type int
number1 = Integer.parseInt(firstNumber);
number2 = Integer.parseInt(secondNumber);
// add the numbers
sum = number1 + number2;
// display the results
JOptionPane.showMessageDialog(null, "The sum is" + sum, "Results", JOptionPane.PLAIN_MESSAGE);
System.exit(0);// terminate the program
}
};
相关问题:
1)关于integer
http://m.biancheng.net/view/890.html
2)java消息提示框JOptionPane的使用方法
https://blog.csdn.net/c1481118216/article/details/51921521?utm_source=app
四、Java变量遵循“同名变量的屏蔽原则”,请自己编写一些测试代码,有意识地在不同地方定义一些同名变量,看看输出的到底是哪个值。
原文:https://www.cnblogs.com/ltw222/p/13757254.html