运行结果:Size s = Size.SMALL;此时,s = SMALL。Size t = Size.LARGE;此时t = LARGE。

System.out.println(s==t)。由于s和t并不引用同一个对象,所以输出false。System.out.println(s.getClass().isPrimitive());用于判断枚举类型当中的各个元素引用的是否是原始数据类型,最后返回false,证明引用的不是原始数据类型,Size u = Size.valueof(“SMALL”)通过字符串的转换使u = SMALL,System.out.println(s==u),此时s = SMALL,u = SMALL,返回true。for(Size value:Size.values())遍历这个枚举类型当中的元素,System.out.println(value)将其输出,并且最后一个输出的为最大值。enum Size{SMALL,MEDIUM,LARGE}为枚举类型引用对象。

结论:枚举类型中的各个元素都不属于基础数据类型,无论这个元素的实际值是否是其他数据类型,我们都认为它不是一种基础数据类型。且枚举类型也可以使用valueof()方法来返回一个值给枚举实例,且在循环中可以不像数组那样用下标进行遍历,并且不仅可以列出枚举类型当中的所有元素,还可以找出它的最大值。

运行结果:输出结果令我十分意外,按照正常人的思维来说,0.05+0.01=0.06即可,在C语言以及C++的学习中,这个结果也不过是0.06000000而已,可是在Java语言当中,以上四个算式的每一个结果都出人意料。

结论:Java语言当中的double和float类型进行计算,都不能得到精确的结果。在查阅相关资料后我了解到,这是由于二进制不能准学的表示十进制的浮点数,由十进制转换为二进制的方法可以知道,如果最后一位不是0或5,长度是无限的。float和double类型主要是为了科学计算和工程计算而设计的,它们执行二进制浮点。

运行结果:System.out.println(“X+Y=”+X+Y)语句输出的结果是“X+Y=100200”,即先将引号内的“X+Y=”原封不动的输出之后,输出了100和200。System.out.println(X+Y+”=X+Y”)语句输出的是“300=X+Y”,

结论:Java中输出时遵循从左至右的规则,且‘+’号运算符在两边都是整形的情况下,会优先对其进行加法运算求和之后再往后运行输出,第一句之所以是100200的结果,就是因为X左边的加号的意义并不是求和运算,而是字符串的衔接,所以编译器从左往右运行时,在“X+Y”+X这里,进行的是字符串拼接,所以到了“X+Y”+X+Y最后一个加号时,由于Y的左边是字符串,所以进行的是字符串的拼接,所以有了“X+Y=100200”的结果。而第二个语句X+Y+”=X+Y”之所以是300=X+Y,就是因为第一个加号运行时,由于两边都是整形,所以优先进行了加法运算,Y之后的加号由于右边是字符串,所以进行了字符串的拼接。我学习到的是,加号运算符当两边都是数字时,一定进行的是加法运算,而当有一边是字符串时,一定进行的是字符串的衔接。

原码补码和反码:

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

补码:正数的补码和原码一致,负数的补码是对原码按位去反加1,符号位不变。

反码:正数的反码和原码一致,负数的反码是对原码按位去反,只是最高位不变。

比如十进制数字5,由于5 = 2^2+2^0,按二进制来算就是101加上符号位,就是4位数字。

原码:0101

反码:0101

补码:0101

比如十进制数字-5

原码:1101

反码:1010

补码:1011

最新文章

  1. 通过数据库查看EBS的登录地址
  2. Bootstrap系列 -- 43. 固定导航条
  3. 大熊君大话NodeJS之------Global Objects全局对象
  4. 常用AWK命令
  5. Extend ComboGrid Editors for DataGrid Of JQuery EasyUI
  6. InnoDB与MyISAM引擎区别
  7. 超简单的php缓存类
  8. Xcode中的全局异常断点
  9. matplot画图kill问题,形成思路
  10. 关于fftshift----将零频率的分量移到频谱的中心
  11. jenkins 修改log路径
  12. solr概况
  13. Java新帮派——数组
  14. 8 . IO类-标准IO、文件IO、stringIO
  15. .NET并行计算和并发8-QueueUserWorkItem异步
  16. 1024 Palindromic Number int_string转换 大整数相加
  17. beautifulsoup4 安装教程
  18. Swift coreAnimation 加计时器写的游戏《飞机大战》
  19. hadoop 2.2.0集群安装详细步骤(简单配置,无HA)
  20. VS2010开发MFC ActiveX,摄像头拍照上传Webservice(2)

热门文章

  1. vue3 loading 等待效果
  2. C语言中static关键字用法
  3. mysql主从故障跳过错误
  4. 关于CMDB
  5. jmeter接口之json提取器应用
  6. git如何把本地文件夹和远程仓库关联
  7. uniapp输入空格
  8. WPF-UI框架MahApps.Metro使用教程
  9. File.Exists 判断不了虚拟路径
  10. h5 json 生成excel