Enum to String 一般用法
一、Enum Review
Java Enum(枚举)是jdk1.5介绍的新特性,使用Java Enum能够更有效的定义集合和常量,使用Enum 也能够增加程序的观赏性和可读性,但是有时候我们使用Enum 需要把它从Java Enum转换为String类型,下面是具体用法
一般常量的定义
public class EnumOrder {
public static final int BIKE = 1;
public static final int BUS = 2;
public static final int CAR = 3;
public static final int TRUCK = 4;
}
一般使用上面的代码来定义一组常量。
定义枚举
public enum Vehicle {
BIKE, BUS, CAR, TRUCK;
}
定义枚举要比定义常量简单很多,而且枚举是final的。
二、使用name()方法转换为String
给定上面定义的Vehicle枚举,让我们解决如何将其转换为String的问题。使用name() 方法能够把Java Enum转换为String
public class VehicleTest {
public static void main(String[] args) {
System.out.println(Vehicle.BIKE.name());
System.out.println(Vehicle.BUS.name());
System.out.println(Vehicle.CAR.name());
System.out.println(Vehicle.TRUCK.name());
}
}
使用name()方法能够获得Enum的名称,name()方法是枚举类内置的方法。
三、使用toString()方法转换为String
像大多数的对象一样,默认都会有一个toString()方法,枚举也不例外
public class VehicleTest {
public static void main(String[] args) {
System.out.println(Vehicle.BIKE.toString());
System.out.println(Vehicle.BUS.toString());
System.out.println(Vehicle.CAR.toString());
System.out.println(Vehicle.TRUCK.toString());
}
}
toString()方法可写可不写,默认会调用每个Enum对象的toString()方法。
四、使用成员属性转换为String
Enum除了定义为final之外,它就像一个普通类一样,能够定义属性和方法、构造函数等。
public enum Vehicle {
BIKE("Enum Bike"),
BUS("Enum Bus"),
CAR("Enum Car"),
TRUCK("Enum Truck");
String name;
Vehicle(String name){
this.name = name;
}
public String getName() {
return name;
}
public static void main(String[] args) {
System.out.println(Vehicle.BIKE.getName());
System.out.println(Vehicle.BUS.getName());
System.out.println(Vehicle.CAR.getName());
System.out.println(Vehicle.TRUCK.getName());
}
}
给每个enum定义了一个name属性,提供一个getName方法访问Enum的属性
注意:给Enum定义属性的时候,必须要用构造器对属性赋值
Enum to String 一般用法的更多相关文章
- C#中string.format用法详解
C#中string.format用法详解 本文实例总结了C#中string.format用法.分享给大家供大家参考.具体分析如下: String.Format 方法的几种定义: String.Form ...
- String.format()用法
package junit.test; import java.util.Date; import java.util.Locale; import org.junit.Test; pub ...
- java中String的用法
String的用法很活跃,也用到的很多.可以根据自己的需要查询API.这里只有concat和substring,indexof的用法 class TestString { public static ...
- C#中string.Format 用法详解
这篇文章主要介绍了C#中string.format用法,以实例形式较为详细的讲述了string.format格式化的各种用法,非常具有实用价值,需要的朋友可以参考下 本文实例总结了C#中string. ...
- C# Enum,Int,String的互相转换 [转]
C# Enum,Int,String的互相转换 Enum为枚举提供基类,其基础类型可以是除 Char 外的任何整型.如果没有显式声明基础类型,则使用 Int32.编程语言通常提供语法来声明由一组已命名 ...
- Oracle中dbms_random.string 的用法
转载:https://blog.csdn.net/simonchi/article/details/8657787 DBMS_RANDOM.STRING(var1,var2) 这个函数有两个参数 va ...
- 关于java中String的用法
在java 中String存在许多的基本函数,接下来了解一下这些函数的基本用法 String.equals用法(这个用法比较难) String类中的equals()方法: public boolean ...
- java成神之——java中string的用法
java中String的用法 String基本用法 String分割 String拼接 String截取 String换行符和format格式化 String反转字符串和去除空白字符 String获取 ...
- string.join用法
C# String.Join用法 String.Join(String, String[]) 在指定 String 数组的每个元素之间串联指定的分隔符 String,从而产生单个串联的字符串 例如: ...
随机推荐
- localstorage与sessionstorage的使用
cookie,sessionStorage,localeStorage的区别 cookie是存储在浏览器端,并且随浏览器的请求一起发送到服务器端的,它有一定的过期时间,到了过期时间自动会消失.sess ...
- 【02】你是如何理解 HTML 语义化的,有什么好处
[02]你是如何理解 HTML 语义化的 01,语义化,就是通过HTML标签来表示页面包含的信息. 02,其中有HTML标签的语义化和CSS命名的语义化. 03,HTML标签语义化的的含义是: ...
- luogu3834 【模板】可持久化线段树 1(主席树)
关于空间,第零棵树是 \(4n\),其后每棵树都要多来 \(\log(n)\) 的空间,所以我是开 \(n(4+\log(n))\) 的空间. 关于借用节点: 图片来自这里 #include < ...
- PHP 获取文件名和扩展名的方法
dirname(path) path: 代表你的文件路径,必须为绝对路径,可以使用__FILE__, 表示列出当前文件的绝对路径,包含文件名 函数会返回当前文件的上一级路径,也就是除了文件名称的路径 ...
- HDU 4280 Island Transport
Island Transport Time Limit: 10000ms Memory Limit: 65536KB This problem will be judged on HDU. Origi ...
- POJ 2157 Maze
Maze Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 3183 Accepted: 996 Description A ...
- 在LoadRunner中执行命令行程序之:popen()取代system()
我想大家应该都知道在LoadRunner可以使用函数system()来调用系统指令,结果同在批处理里执行一样. 但是system()有个缺陷:无法获取命令的返回结果. 也许你可以用`echo comm ...
- iOS视频录制,裁剪(输出指定大小)
弄了几天,终于搞懂一点了,博客后面再写,先附上demo,等研究清楚再写 demo地址:http://pan.baidu.com/s/1o6w2CMu
- 启动第一个 KVM 虚机
本节演示如何使用 virt-manager 启动 KVM 虚机. 首先通过命令 virt-manager 启动图形界面 1 # virt-manager 点上面的图标创建虚机 给虚机命名为 kvm1, ...
- 【HDOJ6222】Heron and His Triangle(Java,二分,递推)
题意:让你找这样的一个三角形,三条边为t,t-1,t+1,并且面积为整数,最后满足t大于等于n. n<=1e30 思路:直接推式子不会,打表找规律 f(n)=4*f(n-1)-f(n-2)(n& ...