• 动手又动脑


    一、  首先我分析了程序,发现问题在于==和equals的区别上:equals比较两个对象的内容是否相同,而== 比较两个对象是否是同一对象。第一个false说明s和t没有引用同一个对象。第二个false说明s不是原始数据类型。Size.valueOf可以是u得到SMALL,然后s就和u相同了。然后将Size.values的所有值赋给value,然后列出所有值。

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

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

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

    二、 

           原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值.

        反码的表示方法是:正数的反码是其本身,负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.

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

        Java语言中的数字是以补码方式存储的。

    三、

           简单的来说就是我们给出的数值,在大多数情况下需要比64bit更多的位数才能准确表示出来(甚至是无穷多位),而double类型的数值只有64bit后面舍去的位数一定会带来误差,无法得到“数学上精确”的结果。

    四、

           第一行输出X+Y=100200,第二行输出300=X+Y。

            java中的加号有时是连接符,有时是运算符:

           1:当左右两边连接的都是非数字型时,则为连接符。

           2:当一边是数值类型,另一边是非数值类型时,则为连接符。

           3:当两边都是数值类型时,则为运算符,即相加求和的作用。

            第一个是连接符,第二个是运算符。

  • 相关阅读:
    C++基础-函数的覆盖和函数重载
    C++基础-public(公有属性),protected(保护属性),private(私有属性)
    C++基础-父类和子类的构造和析构的顺序
    C++基础-类的(有参数)继承
    C++基础-类的(无参数)继承
    C程序之包含头文件
    时间复杂度详细分析
    "分辨率"到底是个什么概念?它和DPI之间是什么关系?
    每天一个Qt类之QWidget
    line1: 1: Syntax error: word unexpected (expecting ")")
  • 原文地址:https://www.cnblogs.com/qianmo123/p/9751942.html
Copyright © 2020-2023  润新知