Java课后总结

1.原码、补码、反码的定义和表示方法。

   数在计算机中是以二进制形式表示的。 数分为有符号数和无符号数。 原码、反码、补码都是有符号定点数的表示方法。 一个有符号定点数的最高位为符号位,0是正,1是副

   原码:原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值.,原码就是这个数本身的二进制形式。 原码是人脑最容易理解和计算的表示方式。

            例如:如果是8位二进制:

                                               [+1]原 = 0000 0001      二进制的首位是0,表示+,其余位数表示值;

                                               [-1]原 = 1000 0001       二进制的首位是1,表示-,其余位数表示值;

  反码:正数的反码是其本身负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.如果一个反码表示的是负数,人脑无法直观的看出来它的数值.,通常要将其转换成原码再计算。

           例如:

                      [+1] = [00000001]原 = [00000001]反             正数的反码是其本身

                      [-1] = [10000001]原 = [11111110]反              负数反码,符号位不变,其余各个位取反。

 补码:正数的补码就是其本身负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)

          例如:

                     [+1] = [00000001]原 = [00000001]反 = [00000001]补       正数的补码就是其本身

                    [-1] = [10000001]原 = [11111110]反 = [11111111]补         负数的补码在其反码的基础上加一  

2.

     动手动脑1,检验EnumTest.java

package text;


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

  

 enum   Size 定义了一个Size枚举类型,并定义了三个变量SMALL,MEDIUM,LARGE,从运行结果可以看出,第一个输出false,证明s和t引用了不同对象,用了Size中的不同变量,第二个输出false,说明了枚举类型不是原始数据类型,第三个输出true,说明了将“SMALL”从字符串转化为枚举,且同s相等。最后输出枚举类型中的所有变量。在枚举类型中”==“的用法和equals()相同。

2      动手动脑2 TestDouble.java

         

package text;
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));
    }
}

  

 double类型的计算结果是不精确的。

3动手动脑3

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

}

  

 从运行结果可以看出,有双引号的是字符串,直接输出,Java中输出用+号相连。

      

猜你喜欢

转载自www.cnblogs.com/zwx655/p/11551353.html