zoukankan      html  css  js  c++  java
  • 动手动脑

    第一个动手动脑  看老师发的文件,EnumTest.java。猜它 的运行结果。

    我猜s和 t肯定引用的不同对象,老师上课也讲过。

    falsefalsetrueSMALLMEDIUMLARGE

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

    因为 “+”在java中具有连接的意义,所以当加法加入其中容易发生歧义并且产生与预期相不符的结果,如第一条代码。

        所以我们要采用第二条代码的表示方法来避免这种错误。

       

          2.仔细阅读示例: EnumTest.java,运行它,分析运行结果

         

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

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

    因为 “+”在java中具有连接的意义,所以当加法加入其中容易发生歧义并且产生与预期相不符的结果,如第一条代码。

        所以我们要采用第二条代码的表示方法来避免这种错误。

       

  • 相关阅读:
    解决IDEA中项目出现cannot resolve method ‘XXXXX(java.lang.String)’问题
    JDK1.8下载、安装和环境配置教程
    JavaBean是什么,POJO是什么
    什么是MVC
    IDEA使用-test下没有resource文件
    Hive入门--3.UDF编写与使用
    Hive入门--2.分区表 外部分区表 关联查询
    Hive入门--1.简介与环境搭建
    SLF4J-jar包多绑定冲突解决
    Hbase--1 简介
  • 原文地址:https://www.cnblogs.com/xc166/p/5937142.html
Copyright © 2011-2022 走看看