第一节java后总结

运行了EnumTest.java之后,结果为false false true SMALL MEDIUM LARGE了解到了一个枚举类型中个元素是不相等的,枚举类型中的元素与其类型相同,且枚举类型不是基础的数据类型,并且输出时是顺序输出。

枚举类型的基本用法:枚举常量是枚举类型中的值,即枚举值。枚举类型是一种用户定义的类型,只有用户在程序中定义它后才能被使用。用户通常利用枚举类型定义程序中需要使用的一组相关的符号常量。枚举类型的定义格式为:enum<枚举类型名>{<枚举表>};它是一条枚举类型定义语句,该语句以enum保留字开始,接着为枚举类型名,它是用户命名的一个标识符,以后就直接使用它表示该类型,枚举类型名后为该类型的定义体,它是由一对花括号和其中的枚举表所组成,枚举表为一组用逗号分开的由用户命名的符号常量,每个符号常量又称为枚举常量或枚举值。枚举类型不属于原始数据类型,他的每个具体值都引用一个特定的对象,相同的值则引用同一个对象,枚举是可以从字符串中转换的。

运行TestDouble.java发现浮点数的输出结果不等于该输出的值,这说明浮点数不是一个确切的值,它只是一个无限与趋近于这个数的一点无限数。

一个数在计算机中的表示形式是二进制,这个数其实就叫机器数。机器数是带符号的,在计算机用一个数的最高位存放符号,正数为0, 负数为1。比如,十进制中的数 +7 ,计算机字长为8位,转换成二进制就是00000111。如果是 -7 ,就是 10000111 。一个存储的二进制码分原码、反码、补码,因为机器使用补码, 所以对于编程中常用到的32位int类型, 可以表示的范围是: [-231, 231-1] 因为第一位表示的是符号位.而使用补码表示时又可以多保存一个最小值。

补码、原码和反码概念:

原码:最高位是符号位,0代表正数,1代表负数,非符号为该数字绝对值的二进制。

反码:正数的反码与原码一致,负数的反码是对原码按位取反,只是最高位(符号位)不变。补码:正数的补码与原码一致,负数的补码是对原码按位取反加1,符号位不变。

补码变成原码的方式是:正数的补码与原码一致,负数的补码按位取反加1,符号位不变

反码变成原码的方式是:正数的反码与原码一致,负数的补码按位取反,符号位不变

原码、反码、补码 0的问题

4位二进制原码表示0:-0=1000   +0=0000 

4位二进制反码表示0:-0=1111   +0=0000 

4位二进制补码表示0:-0=0000   +0=0000 

原码、反码、补码 表示范围

n+1位数字,绝对值最大的原码是  -(2^n - 1)和 2^n - 1

n+1位数字,绝对值最大的反码是  -(2^n - 1) 和 2^n - 1

n+1位数字,绝对值最大的补码是  -2^n

posted @ 2022-09-12 11:11  一个不会起名字的人  阅读(14)  评论(0编辑  收藏  举报