作业

1.仔细阅读示例: EnumTest.java,运行它,分析运行结果?

源代码:

public class EnumTest {

public static void main(String[] args) {

Size s=Size.SMALL;

Size t=Size.LARGE;

//st引用同一个对象?

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};

截图:

 

2.你能得到什么结论?你掌握了枚举类型的基本用法了吗?

(1JAVA的基本数据类型有8种:byte(字节)short(短整型)int(整数型)long(长整型)float(单精度浮点数类型)double(双精度浮点数类型)char(字符类型)boolean(布尔类型)。而枚举类型不是原始数据类型。

2)它的每个具体值都引用一个特定的对象。相同的值则引用同一个对象。

3)可以使用“==”方法直接比对枚举变量的值

3.阅读相应教材,或者使用互联网搜索引擎,弄清楚反码、补码跟原 码这几个概念,然后编写示例程序,对正数、负数进行各种位操作,观察输出结果,与手工计算的结果进行比对,看看Java中的数是采用上述哪种码表示的。

原码:二进制的定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。

反码:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。

补码:正数的补码与其原码相同;负数的补码是在其反码末位加1

4.请运行以下代码(TestDouble.java):

源代码:

public class TestDouble {

public static void main(String args[]) {

        System.out.println("0.05 + 0.01 = " + (0.05 + 0.01));

        System.out.println("1.0 - 0.42 = " + (1.0 - 0.42));

        System.out.println("4.015 * 100 = " + (4.015 * 100));

        System.out.println("123.3 / 100 = " + (123.3 / 100));

    }

}

截图:

 

5.为什么double类型的数值进行运算得不到“数学上精确”的结果?

双精度浮点数在机内占8个字节,用64位二进制描述。Double 变量以带符号的 IEEE 64 位(8 个字节)双精度浮点数形式存储,负值取值范围为 -1.79769313486231570E+308 到 -4.94065645841246544E-324,正值取值范围为 4.94065645841246544E-324 到 1.79769313486231570E+308。

6.以下代码的输出结果是什么?

源代码:

public class Jia {

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");

}

}

运行结果:

 

7.编写一个程序,用户输入两个数,求出其加减乘除,并用消息框显示计算结果。

源代码:

// An addition program 

import javax.swing.JOptionPane;  // import class JOptionPane

public class Addition {

   public static void main( String args[] )

   {

      String firstNumber,   // first string entered by user

             secondNumber;  // second string entered by user

      int number1,          // first number to add

          number2,          // second number to add

          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" );

      // convert 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

   }

}

截图:

 

原文地址:https://www.cnblogs.com/fan-xiaofan/p/4859565.html