其他分享
首页 > 其他分享> > 动手动脑

动手动脑

作者:互联网

动手动脑

 

一、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变量遵循“同名变量的屏蔽原则”,请自己编写一些测试代码,有意识地在不同地方定义一些同名变量,看看输出的到底是哪个值。

 

标签:动脑,System,动手,枚举,println,Size,原码,out
来源: https://www.cnblogs.com/ltw222/p/13757254.html