string-Java枚举的使用的问题

问题描述

Java枚举的使用的问题

教材里面有段关于枚举的代码,但一直报错,麻烦高手看一下

import java.util. *;
public class EnumTest {

    public static void main(String[] args) {
        Scanner in=new Scanner(System.in);
        System.out.print("请输入服装型号:(SMALL,MEDIUM,LARGE,EXTRA_LARGE,EXTRA_EXTRA_LARGE)");
        String input=in.next().toUpperCase();
        Size size=Enum.valueOf(Size.class,input);
        System.out.println("Size="+size);
        System.out.println("abbreviation="+size.getAbbreviation());
        if(size==Size.EXTRA_LARGE^size==Size.EXTRA_EXTRA_LARGE)
            System.out.println("很好,你注意到了下划线");

    }
    public static String abbreviation;
    enum Size{SMALL,MEDIUM,EXTRA_LARGE,EXTRA_EXTRA_LARGE}
    private void Size(String abbreviation){this.abbreviation=abbreviation;}
    public String getAbbreviation(){return abbreviation;}
}

解决方案

像这样:
enum Size{SMALL,MEDIUM,EXTRA_LARGE,EXTRA_EXTRA_LARGE;

public String getAbbreviation() {
    // TODO Auto-generated method stub
    return abbreviation;
}
}

解决方案二:

按你的调用,getAbbreviation方法要定义在枚举中,不是在主类里

时间: 2024-09-20 00:30:01

string-Java枚举的使用的问题的相关文章

【转】java枚举使用详解

在实际编程中,往往存在着这样的"数据集",它们的数值在程序中是稳定的,而且"数据集"中的元素是有限的. 例如星期一到星期日七个数据元素组成了一周的"数据集",春夏秋冬四个数据元素组成了四季的"数据集". 在Java中如何更好的使用这些"数据集"呢?因此枚举便派上了用场,以下代码详细介绍了枚举的用法. Java代码   package com.ljq.test;      /**   * 枚举用法详解   *

Java枚举的反向查找

java的枚举常常被用来替代常量值,每个枚举值代表一个特定的常数. 在反序列化时有常常需要用到常数到枚举的转换,这就涉及到枚举的反向查找. 1.从枚举名反向查找枚举 这种方法是最先使用也最为简便的 可以用到枚举的静态方法valueOf(String name) valueOf方法为内置方法,使用简便,但在查找不到枚举时会抛出异常. 熟悉异常的同学可能知道异常抛出时,需要收集虚拟机的调用堆栈上下文信息,对性能影响较大. 使用时,常常需要使用这么一个反序列化查找方法 E find(String na

Java枚举类用法实例

  本文实例讲述了Java枚举类用法.分享给大家供大家参考.具体如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 package com.school.stereotype; /** * 活动枚举类型 * @

java枚举

一.Enum 枚举类 1.枚举类和普通类的区别: 使用 enum 定义的枚举类 默认继承了 java.lang.Enum 类. 枚举类的构造器只能使用 private 访问控制符. 枚举类的所有实例必须在枚举类中显式列出(, 分隔 ; 结尾). 列出的实例系统会自动添加 public static final 修饰. 2.注意 a.必须在枚举类的第一行声明枚举类对象. b.JDK 1.5 中可以在 switch 表达式中使用Enum 定义的枚举类的对象作为表达式, case 子句可以直接使用枚举

Java枚举(用Java普通类模拟枚举的实现原理及JDK枚举API使用示例)

枚举的特点: ◆类型安全(Type Safety)  ◆紧凑有效的枚举数值定义(Compact, Efficient Declaration of Enumerated Values)  ◆无缝的和程序其它部分的交互操作(Seamless integration with other language features)  ◆运行的高效率(Runtime efficiency) 详情请看:http://www.51cto.com/specbook/11/32877.htm 1.使用Java普通类

Java枚举的七种常见用法总结(必看)_java

用法一:常量 在JDK1.5之前,我们定义常量都是:publicstaticfianl.....现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. Java代码 public enum Color { RED, GREEN, BLANK, YELLOW } 用法二:switch JDK1.6之前的switch语句只支持int,char,enum类型,使用枚举,能让我们的代码可读性更强. Java代码 enum Signal { GREEN, YELLOW,

Java枚举(enum) 详解7种常见的用法_java

JDK1.5引入了新的类型--枚举.在 Java 中它虽然算个"小"功能,却给我的开发带来了"大"方便.  用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. public enum Color { RED, GREEN, BLANK, YELLOW } 用法二:switch JDK1.6之前的switch语句只支持int

Java枚举类enum介绍_java

枚举类enum是JDK1.5引入的,之前都是用public static final int enum_value来代替枚举类的.枚举类enum是一种特殊的类,它默认继承了类java.lang.Enum.和其它普通类一样,enum同样可以有成员变量.方法.构造器,也可以实现一个或多个接口,区别是: 1.如果有构造器,必须用private修饰. 2.枚举类不能派生子类. 3.枚举类所有的实例必须在第一行显示定义.系统会自动给这些实例加上public static final修饰,无须程序员显示定义

Java枚举详解及使用实例(涵盖了所有典型用法)_java

在实际编程中,往往存在着这样的"数据集",它们的数值在程序中是稳定的,而且"数据集"中的元素是有限的. 例如星期一到星期日七个数据元素组成了一周的"数据集",春夏秋冬四个数据元素组成了四季的"数据集". 在java中如何更好的使用这些"数据集"呢?因此枚举便派上了用场,以下代码详细介绍了枚举的用法. package com.ljq.test; /** * 枚举用法详解 * * @author jiqinli

Java枚举类用法实例_java

本文实例讲述了Java枚举类用法.分享给大家供大家参考.具体如下: package com.school.stereotype; /** * 活动枚举类型 * @author QiXuan.Chen */ public enum EventStatus { /** * 未发布. */ DRAFT("DRAFT", "未发布"), /** * 已发布. */ PUBLISHED("PUBLISHED", "已发布"); /**