第十三章,枚举与泛型例题

例题1

package 例题;

interface SeasonInterface{
	//四季接口
	int SPRING = 1, SUMMER = 2, AUTUMN = 3, WINTER = 4;
}

enum SeasonEnum{
	//四季枚举
	SPRING,SUMMER,AUTUMN,WINTER
}


public class 例题1 {
	//定义方法
	public static void printSeason1(int season){
		switch (season) {
		case SeasonInterface.SPRING:
			System.out.println("这是春季");
			break;
		case SeasonInterface.SUMMER :
			System.out.println("这是夏季");
			break;
		case SeasonInterface.AUTUMN :
			System.out.println("这是秋季");
			break;
		case SeasonInterface.WINTER :
			System.out.println("这是冬季");
			break;
		default:
			System.out.println("这不是四季常量值");
			break;
			}
		}
		 
		 public static void printSeason2(SeasonEnum season){
			 switch (season) {
				case SPRING:
					System.out.println("这是春季");
					break;
				case SUMMER :
					System.out.println("这是夏季");
					break;
				case AUTUMN :
					System.out.println("这是秋季");
					break;
				case WINTER :
					System.out.println("这是冬季");
					break;
					}
		 }
	public static void main(String[] args) {
		//使用接口常量做参数
		printSeason1(SeasonInterface.SPRING);
		//使用数字做参数
		printSeason1(3);
		//使用接口常量值以外的数字冒充常量值
		printSeason1(-1);
		//使用枚举做参数
		printSeason2(SeasonEnum.WINTER);
		
	}
}

结果

例题2

package 例题;

//定义枚举
enum Season{
	SPRING, SUMMER, AUTUMN, WINTER
}

public class 例题2 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//使用枚举方法values
		Season se[] = Season.values();
		for(int i = 0; i < se.length; i++) {
			System.out.println("枚举常量:" + se[i]);
		}
	}

}

结果

例题3

package 例题;

enum Season8 {
	SPRING, SUMMER, AUTUMN, WINTER
}

public class 例题3 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Season8 se = Season8.valueOf("SUMMER");//根据字符串创建一个枚举值
		Season8 se1[] = Season8.values();//获取所有枚举值
		for(int i = 0; i<se1.length;i++ ) {
			String message = "";//待输出消息
			int result = se.compareTo(se1[i]);//记录两个枚举比较的结果
			if(result  < 0) {
				message = se + "在" + se1[i] + "的前" + (-result) + "个位置";
			}
			else if(result>0) {
				message = se + "在" + se1[i] + "的后" + (result) + "个位置";
			}
			else if(result==0) {
				message = se + "与" + se1[i] + "是同一个值" ;
			}
			System.out.println(message);
		}
	}

}

结果

例题4

package 例题;
enum SE{
	SPRING, SUMMER, AUTUMN, WINTER
}
public class 例题4 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		SE se[] = SE.values();
		for(int i = 0; i < se.length; i++) {
			System.out.println(se[i] + "在枚举类型中位置索引值" + se[i].ordinal());
		}
	}

}

结果

例题5

package 例题;
enum Seaon{
	SPRING("万物复苏"),
	SUMMER("烈日炎炎"),
	AUTUMN("秋草枯黄"),
	WINTER("白雪皑皑");
	
	public String remarks;//枚举的备注
	
	private Seaon(String remarks) {//构造方法
		this.remarks = "我是" + this.toString() + "我来之后" + remarks + "。";
	}
	
	public String getRemarks() {//获取备注方法
		return remarks;
		
	}
}
public class 例题5 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Seaon ss[] = Seaon.values();
		for(int i = 0; i < ss.length; i++) {
			System.out.println(ss[i].getRemarks());
		}
	}

}

结果

例题6

package 例题;

public class 例题6<T> {
	private T bookinfo;
	public 例题6(T bookinfo) {
		this.bookinfo = bookinfo;
	}
	public 例题6() {
		// TODO Auto-generated constructor stub
	}
	public T getBookinfo() {
		return bookinfo;
	}
	public static void main(String[] args) {
		//创建参数String类型的书名对象
		例题6<String> bookName = new 例题6("Java从入门到精通");
//		创建参数String类型的作者对象
		例题6<String> bookAuthor = new 例题6("明日科技");
		//创建参数String类型的价格对象
		例题6<Double> bookPrice = new 例题6(69.8);
		//创建参数String类型的附赠源码
		例题6<Boolean> hasSource = new 例题6(true);
		System.out.println("书名:" + bookName.getBookinfo());
		System.out.println("作者:" + bookAuthor.getBookinfo());
		System.out.println("价格:" + bookPrice.getBookinfo());
		System.out.println("是否附赠源码:" + hasSource.getBookinfo());

	}

}

结果

例题7

package 例题;

public class 例题7<A> {
	private A[] array;
	public A[] getarray() {
		return array;
	}
	public void setArry(A[] array) {
		this.array = array;
	}
	public static void main(String[] args) {
		例题7<String> dome = new 例题7();
		String value[] = {"成员1", "成员2", "成员3", "成员4", "成员5"};
		dome.setArry(value);
		String array[] = dome.getarray();
		for(int i = 0; i < array.length; i++) {
			System.out.println(array[i]);
		}
	}

}

结果

例题8

package 例题;
import java.util.*;

public class 例题8 {

	public static void main(String[] args) {
		//定义ArrayList容器,设置容器内是的值为Integer
		ArrayList<Integer> a = new ArrayList<Integer>();
		a.add(1);
		for(int i = 0; i<a.size(); i++) {
			//根据容器长度,循环显示容器内的值
			System.out.println("获取ArrayList容器成员的值:" + a.get(i));
		}
		//定义HashMap容器,设置容器的键名与键值类型分别为Integer型与String型
		HashMap<Integer ,String> m = new HashMap<Integer ,String>();
		for(int i = 0; i<5; i++) {
			m.put(i, "成员" + i);
		}
		for(int i = 0; i<m.size(); i++) {
			System.out.println("获取Map容器成员的值;"  + m.get(i));
		}
	}

}

结果

相关推荐
2401_857439694 分钟前
SpringBoot框架在资产管理中的应用
java·spring boot·后端
怀旧6665 分钟前
spring boot 项目配置https服务
java·spring boot·后端·学习·个人开发·1024程序员节
测试界的酸菜鱼6 分钟前
C# NUnit 框架:高效使用指南
开发语言·c#·log4j
GDAL6 分钟前
lua入门教程 :模块和包
开发语言·junit·lua
李老头探索7 分钟前
Java面试之Java中实现多线程有几种方法
java·开发语言·面试
CSXB999 分钟前
三十四、Python基础语法(文件操作-上)
开发语言·python·功能测试·测试工具
芒果披萨13 分钟前
Filter和Listener
java·filter
qq_49244844617 分钟前
Java实现App自动化(Appium Demo)
java
阿华的代码王国26 分钟前
【SpringMVC】——Cookie和Session机制
java·后端·spring·cookie·session·会话
web Rookie29 分钟前
JS类型检测大全:从零基础到高级应用
开发语言·前端·javascript