• 动手动脑


    1.示例程序代码:

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

    运行结果截图:

     

    2.枚举值是常量,不是变量。不能在程序中用赋值语句再对它赋值。

    枚举元素本身由系统定义了一个表示序号的数值,从0开始顺序定义为0,1,2…。

    枚举元素不是字符常量也不是字符串常量,使用时不要加单、双引号。

    枚举可用于switch语句中。

    枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象。相同的值则引用同一个对象。

    可以使用“==”和equals()方法直接比对枚举变量的值,对于枚举类型的变量,“==”和equals()方法执行的结果是等价的。

    3.反码、补码、码的概念:

    反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。

    补码表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1

    原码就是带正、负号的二进制数,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。

    3.同名变量的屏蔽原则

     示例:    

    public class Test3 {

    private static int value=1;

    public static void main(String[] args) {

    // TODO Auto-generated method stub

            int value=2;

            System.out.println(value);

    }

    }

    结果为:2

    java中,局部定义的变量能够覆盖全局范围内的变量。在局部使用某个变量的时候JVM会优先找和当前使用位置"近"的变量的的定义!如果在局部定义了和全局变量一样的名字,我们使用的过程中,调用全局变量的话,使用this关键字辅助

    4.Java中数据类型所占的位数及表示数值的范围:

     

    5.示例

    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类型的数值占用64bit,即64个二进制数,除去最高位表示正负符号的位,在最低位上一定会与实际数据存在误差(除非实际数据恰好是2的n次方)。

    使用double类型计算数值结果是不精确的。

    6.示例

    public class Test{

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

    }

    }

    运行结果:

     

    两种输出方法中,第一种将+”当做连接符。而第二种才是计算符。

  • 相关阅读:
    我的技术十年
    django-cookie&session
    论学习方法
    操作系统知识
    一百天记录
    Microsoft COCO 数据集
    qt虚拟键盘编译时报错缺乏qpa/qplatforminputcontext.h文件
    ffmpeg拉取rtsp视频流
    顶层QWidget弹窗设置背景为透明,透明部分为黑色。
    ubuntu20.04 gnome桌面系统添加开机自启动GUI程序
  • 原文地址:https://www.cnblogs.com/chen160340/p/5937051.html
Copyright © 2020-2023  润新知