Rhythmk 一步一步学 JAVA (20) JAVA enum常用方法
JAVA 枚举定义常用方法:
1、static Enum valueOf(Class enum,String name)
返回指定name的枚举类型
2、Static Enum values[]
返回枚举常量集合
package com.rhythmk.filedemo;
import java.util.Scanner;
public class enum_demo {
public static void main(String[] args) {
System.out.println("------------------------1-----------------------------");
//1、获取枚举对象所有枚举类型
Size[] sizeArr=Size.values();
for (Size size : sizeArr) {
System.out.println(size.toString());
}
System.out.println("------------------------2-----------------------------");
// 2、通过 Enum 的 Indexof(EnumType,name) 返回于name同名的枚举属性
Scanner sc=new Scanner(System.in);
System.out.println("请输入Size属性[SMALL,BIG,LARGE]");
String sInput=sc.next();
Size smallSize=Size.SMALL;
Size eInput=Size.valueOf(Size.class,sInput);
if(eInput==smallSize)
{
System.out.println("True,'枚举对象为:'"+eInput);
}else
{
System.out.println("False");
}
System.out.println("------------------------3-----------------------------");
// 3、调用枚举定义方法
String sizeShow=Size.SMALL.Show();
System.out.println(sizeShow);
Size bigLarge= Size.BIGLARGE;
System.out.println("------------------------4-----------------------------");
// 4、调用枚举自定义方法
String sblogsShow=Blog.RHYTHMK.Show();
System.out.println(sblogsShow);
}
}
enum Size
{
SMALL,
BIG,
LARGE,
BIGLARGE("BIGLARGE");
private Size()
{}
private Size(String str)
{
System.out.println("Size被创建,传入值为:"+str);
}
public String Show()
{
return "调用枚举定义方法回传值";
}
}
enum Blog
{
CNBLOGS("博客园"),
CSDN("CSDN博客"),
RHYTHMK("本博客");
private Blog(String str)
{
this._show=str;
}
private String _show;
private String getShow()
{
return _show;
}
public String Show()
{
return "当前选择博客为:"+getShow();
}
}
输出:
------------------------1-----------------------------
Size被创建,传入值为:BIGLARGE
SMALL
BIG
LARGE
BIGLARGE
------------------------2-----------------------------
请输入Size属性[SMALL,BIG,LARGE]
SMALL
True,'枚举对象为:'SMALL
------------------------3-----------------------------
调用枚举定义方法回传值
------------------------4-----------------------------
当前选择博客为:本博客
Rhythmk 一步一步学 JAVA (20) JAVA enum常用方法的更多相关文章
- Java - 20 Java 继承
Java 继承 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类.继承可以理解为一个对象从另一个对象获取属性的过程. 如果类A是类B的父类,而类B是类C的父类,我们也称C是A的子 ...
- Rhythmk 一步一步学 JAVA(7): jsp 自定义标签
1.实现Tag接口: TagSupport类实现了Tag接口,为我们提供了4个重要的方法(见表6-5). 1.1. TagSupport类中的常用方法 int doStartTag ...
- 一步一步学Silverlight 2系列(20):如何在Silverlight中与HTML DOM交互(下)
述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...
- 一步一步学ROP之linux_x64篇
一步一步学ROP之linux_x64篇 一.序 **ROP的全称为Return-oriented programming(返回导向编程),这是一种高级的内存攻击技术可以用来绕过现代操作系统的各种通用防 ...
- 一步一步学android控件(之十五) —— DegitalClock & AnalogClock
原本计划DigitalClock和AnalogClock单独各一篇来写,但是想想,两个控件的作用都一样,就和在一起写一篇了. DegitalClock和AnalogClock控件主要用于显示当前时间信 ...
- 一步一步学android控件(之十六)—— CheckBox
根据使用场景不同,有时候使用系统默认的CheckBox样式就可以了,但是有时候就需要自定义CheckBox的样式.今天主要学习如何自定义CheckBox样式.在CheckBox状态改变时有时需要做一些 ...
- 【DG】[三思笔记]一步一步学DataGuard
[DG][三思笔记]一步一步学DataGuard 它有无数个名字,有人叫它dg,有人叫它数据卫士,有人叫它data guard,在oracle的各项特性中它有着举足轻理的地位,它就是(掌声)..... ...
- 一步一步学android控件(之六) —— MultiAutoCompleteTextView
今天学习的控件是MultiAutoCompleteTextView . 提到MultiAutoCompleteTextView 我们就自然而然地想到AutoCompleteTextView ,就想知道 ...
- 系列文章--一步一步学Silverlight2
概述 由TerryLee编写的<Silverlight 2完美征程>一书,已经上市,在该系列文章的基础上补充了大量的内容,敬请关注.官方网站:http://www.dotneteye.cn ...
随机推荐
- windows下的IO模型之异步选择(WSAAsyncSelect)模型
异步选择(WSAAsyncSelect)模型是一个有用的异步I/O 模型.其核心函数是WSAAsyncSelect,该函数是非阻塞的 (关于异步io的理解详情可以看:http://www.cnblog ...
- 从数组里随机获取N项
基础知识: 复制数组: (1)循环遍历复制(不推荐) var arry = [1,5,9,7], new_arry = [], n = 0, len = arry.length; for(;n< ...
- Leetcode 62
//从理解二维dp到简化成一维dp我用了一年的时间class Solution { public: int uniquePaths(int m, int n) { vector<); ;i &l ...
- 使用扩展方法(Chapter3 P39-41)
namespace LanguageFeatures { public class ShoppingCart { public List<Product> Products { get; ...
- 关于 XML 头声明和standalone 的解释
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <roo ...
- 获得文件路径 _pgmptr, _makepath, _splitpath
#include <stdlib.h> #include <stdio.h> int main(void) { char path_buffer[_MAX_PATH]; cha ...
- bzoj1073
题意: k短路 题解: A* 当然是抄了zzd的代码 然而需要特判 为什么把bool改成int爆空间!!! 代码: #include<bits/stdc++.h> using namesp ...
- junit里面Test Case的执行顺序
这里讨论的是junit在ant运行的情况,其他build工具应该也适用,但具体没试验过. 首先运行junit时是按照脚本中文件夹的顺序执行,如下脚本会先执行test1目录下的测试,其实是test2目录 ...
- 关于面向对象和String类型的 09,10
package test.面试题; public class Test9 { public static void main(String[] args){ Outer.Inner in=new Ou ...
- 集成学习之Boosting —— AdaBoost实现
集成学习之Boosting -- AdaBoost原理 集成学习之Boosting -- AdaBoost实现 AdaBoost的一般算法流程 输入: 训练数据集 \(T = \left \{(x_1 ...