ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

第一次课程总结

2022-09-12 12:01:48  阅读:165  来源: 互联网

标签:总结 反码 补码 取反 第一次 枚举 课程 正数 原码


Enum.test是一个枚举类,他的使用需要用到enum关键字,枚举类型符合通用模式class enum,枚举类型会一次引用定义时的一系列值,在一些情况下能使编程更加简单,如:我们的关于星期几的问题,一个枚举类就能反复调用星期这七个字符串。枚举类型是一个引用类型而非我们熟知的int,double等原始数据类型,它的每一个具体值都要引用其具体值对应的特定对象。值得注意的是,我们可以直接“==”和equals()方法直接比对枚举变量的值,来达到判断是否全等的问题。

关于TestDouble.java文件的运行,我发现他的输出值包含无限循环小数,程序运算之后的值以小数的形式无限接近于我们人计算的正确值,具体表现形式为:123.3/100=1.232999999999……。这个文件让我了解到,Java文件中,浮点数类型在计算机中的存储并不是一个整数的形式,而是以一个无限接近实际要存数的实际存储数存储,在许多年前,有一位程序员便通过浮点和整数类型之间的转换赚取了巨额的金钱。

在课上,老师提到了BigDecimal类 可以用来解决浮点数误差的问题,但是需要注意的是在定义BigDecimal对象的时候使用的是字符串而不是double数值,否则仍然会因为计算机程序存储数据的差异造成以上的误差。

我们也进行了一下代码的运行:     

int X=100;

       int Y=200;

       System.out.println("X+Y="+X+Y);

       System.out.println(X+Y+"=X+Y");

我们发现,输出结果是这样的:

X+Y=100200

300=X+Y

    这个案例让我们发现了,在System.out.println()这个函数中,在“”之前的+会被识别为算数运算符,而“”之后的+一律被识别为两个不同输出元素的连接词,要使得System.out.println("X+Y="+X+Y);打印出我们想要的结果,我们需要将X+Y用‘()‘包起来,使之具有更高的优先级,即:先计算后被打印。

       Java中有两种类型,需要首字母大写的引用数据类型(如:String),和变量中仅包含数据的原始数据类型(如我们熟知的:int、float),分辨他们最好的方式就是判断是否在使用时,具有大写的字母。

    课上,建民哥要求我们自己了解原码、补码以及反码,并说说自己的感想,通过课后的了解到:计算机通过最基础的二进制储存信息,原码:最高位是符号位,0代表正数,1代表负数,非符号位为该数字绝对值的二进制;反码:正数的反码与原码一致,负数的反码是对原码按位取反,只是最高位(符号位)不变。;补码:正数的补码与原码一致,负数的补码是对原码按位取反加1,符号位不变。原补反三者之间可以按照一定的规则转化,补码变成原码的方式是:正数的补码与原码一致,负数的补码按位取反加1,符号位不变;反码变成原码的方式是:正数的反码与原码一致,负数的补码按位取反,符号位不变。三码的数据表示范围跟用几位数字表示有着巨大关系n+1位数字,绝对值最大的原码是  -(2^n - 1)和 2^n – 1;n+1位数字,绝对值最大的反码是  -(2^n - 1) 和 2^n - 1;n+1位数字,绝对值最大的补码是  -2^n。

      通过本节课,我了解到自身在专业知识上的不足:缺乏最基本的常识,缺少对数据存储方式本质的理解,不能很好规范自己的编程,变量名随心而起,几乎不写注释,这些问题让我和其他人合作几乎是不可能,在接下来的时间,我会努力规范自己的编程格式,了解编程知识。

 

标签:总结,反码,补码,取反,第一次,枚举,课程,正数,原码
来源: https://www.cnblogs.com/xxaxf/p/16685852.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有