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

例题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));
		}
	}

}

 结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/113373.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【计算机网络】应用层——HTTPS协议

目录 HTTPS协议加密对称加密非对称加密 数据摘要&#xff08;数据指纹&#xff09;HTTPS安全问题对称加密非对称加密 证书客户端认证查看客户端证书 解决数据安全问题&#xff08;引入证书&#xff09; HTTPS协议 HTTP 协议内容都是按照⽂本的⽅式明⽂传输的. 这就导致在传输过…

使用shardingJDBC中的雪花算法生成id

常用ID解决方案 数据库自增id 依靠数据库系统的功能实现&#xff0c;但是未来扩容麻烦主从切换时的不⼀致可能会导致重复发号性能瓶颈存在单台sql上 UUID 性能非常高&#xff0c;没有网络消耗无序的字符串&#xff0c;不具备趋势自增特性UUID太长&#xff0c;不易于存储&am…

Ubuntu系统HUSTOJ 用 vim 修改php.ini 重启PHP服务

cd / sudo find -name php.ini 输出&#xff1a; ./etc/php/7.4/cli/php.ini ./etc/php/7.4/fpm/php.ini sudo vim /etc/php/7.4/cli/php.ini sudo vim /etc/php/7.4/fpm/php.ini 知识准备&#xff1a; vim的搜索与替换 在正常模式下键入 / &#xff0c;即可进入搜索模式…

7个UI设计必备课程,小白必看!

无论你是想提高技能的资深UI设计师还是网站开发人员&#xff0c;又或者是刚转行不久的UI设计新手&#xff0c;学习UI设计课程都会让你做出更美观、更有影响力的UI界面设计作品。现在网上有很多网上的UI设计课程。通过这些课程&#xff0c;你可以自己学习、掌握一些UI设计的基础…

PC端视频编辑处理的全方位解决方案

视频已经成为企业传播信息、展示品牌形象的重要工具。然而&#xff0c;制作高质量的视频并非易事&#xff0c;需要专业的技术和设备。这就是美摄科技发挥作用的地方。我们为企业提供一站式的PC端视频编辑处理解决方案&#xff0c;帮助企业轻松制作出专业级别的视频。 美摄科技…

最新版一媒体7.3、星媒体、皮皮剪辑,视频MD ,安卓手机剪辑去重神器+搬运脚本+去视频重软件工具

最新版一媒体app安卓版介绍&#xff1a; 这是一款功能强大的视频搬运工具&#xff0c;内置海量视频编辑工具&#xff0c;支持一键智能化处理、混剪、搬运、还能快速解析和去水印等等&#xff0c;超多实用功能等着您来体验&#xff01; 老牌手机剪辑去重神器&#xff0c;用过的…

2103. 环和杆

2103. 环和杆 难度: 简单 来源: 每日一题 2023.11.02 总计有 n 个环&#xff0c;环的颜色可以是红、绿、蓝中的一种。这些环分别穿在 10 根编号为 0 到 9 的杆上。 给你一个长度为 2n 的字符串 rings &#xff0c;表示这 n 个环在杆上的分布。rings 中每两个字符形成一个…

sass相关

1、代码简化 1.1、简化媒介查询 mixin flex{display: flex;justify-content: center;align-items: center; } .header{width: 100%;include flex;//可以这样引用 }//加入参数 mixin flex($layout){display: flex;justify-content: $layout;align-items: $layout; } .header{w…

Android开发知识学习——Kotlin进阶

文章目录 次级构造主构造器init 代码块构造属性data class相等性解构Elvis 操作符when 操作符operatorLambda循环infix 函数嵌套函数注解使用处目标函数简化函数参数默认值扩展函数类型内联函数部分禁用用内联具体化的类型参数抽象属性委托属性委托类委托 Kotlin 标准函数课后题…

Springboot项目Eureka安全加密

一、通过security增加账号密码登录 1、registry服务pom增加security依赖 2、registry 配置文件 指定security账号密码 3、http://账号:密码IP:PORT/eureka/ 4、重启 二、关闭节点 三、防火墙移除eureka端口访问 参考&#xff1a;Linux(Centos7)操作记录

C#编程中字符串公式的计算

在一个程序开发当中&#xff0c;有很多涉及到公式的定义与计算&#xff0c;在用户给定的文档中&#xff0c;公式采用字符串形式定义&#xff0c;包含了一些变量名和各种运算符号&#xff0c;程序需要先进行字符变量的值替换后再进行计算&#xff0c;取得结果后再进行后续的操作…

【计算系统】5分钟了解超算,高性能计算,并行计算,分布式计算,网格计算,集群计算以及云计算的区别

5分钟了解超算&#xff0c;高性能计算&#xff0c;并行计算&#xff0c;分布式计算&#xff0c;网格计算&#xff0c;集群计算以及云计算的区别 1. 超算2. 高性能计算3. 并行计算4. 分布式计算5. 网格计算6. 集群计算7. 云计算小结相关资料 1. 超算 超级计算机&#xff08;Sup…

文具办公用品展示预约小程序的作用是什么

文具办公用品的应用度非常高&#xff0c;市场众多企业&#xff0c;虽然目前不少已经实现电子化办公&#xff0c;但如铅笔、橡皮、色板、文件袋等依然有消费性&#xff0c;同时这些产品一般适用于批量采购&#xff0c;但在实际经营中&#xff0c;线上冲击和各商家竞争激烈&#…

基于深度学习的动物识别 - 卷积神经网络 机器视觉 图像识别 计算机竞赛

文章目录 0 前言1 背景2 算法原理2.1 动物识别方法概况2.2 常用的网络模型2.2.1 B-CNN2.2.2 SSD 3 SSD动物目标检测流程4 实现效果5 部分相关代码5.1 数据预处理5.2 构建卷积神经网络5.3 tensorflow计算图可视化5.4 网络模型训练5.5 对猫狗图像进行2分类 6 最后 0 前言 &#…

【LVS实战】02 搭建一个LVS-NAT模式实验

一、网络结构 用虚拟机搭建如下的几台机器&#xff0c;并配置如下的ip 关于虚拟机网卡和网络的配置&#xff0c;可以参考 iptables章节&#xff0c;05节&#xff1a;网络转发实验 主机A模拟外网的机器 B为负载均衡的机器 C和D为 RealServer 二、C和D主机的网关设置 C和D机…

Linux -------------------设置防火墙和SELinux

&#xff08;一&#xff09;防火墙概述 防火墙的概念&#xff1a;防火墙是一种非常重要的网络安全工具&#xff0c;它是网络安全的重要组成部分&#xff0c;用于保护计算机网络免受未经授权的访问、恶意攻击和数据泄漏等威胁等。 防火墙的特点 防火墙通常具备以下几个特点。 …

吊椅的魔力:花园中的心灵放松

在忙碌的现代生活中&#xff0c;我们经常需要一些时间来重拾内心的宁静。花园吊椅可能是你需要的答案。这个看似简单的户外家具&#xff0c;实际上承载着解锁自然疗愈力量的潜力&#xff0c;有助于恢复身心的平静。 花园吊椅为我们提供了重返自然的机会。坐在吊椅上&#xff0…

新手必看的Facebook广告投放基础思路

一、广告账号要求 如果您还没有Facebook账号&#xff0c;那么第一步是准备Facebook账号。 1、配置正确的网络环境 Facebook账号需要在稳定安全的网络环境中运行&#xff0c;否则很容易导致封禁。像我们常用的是Maskfog指纹浏览器&#xff0c;可以通过自定义浏览器指纹与为环…

利用端口映射技术快速搭建微力私人网盘并实现远程访问【内网穿透】

文章目录 1.前言2. 微力同步网站搭建2.1 微力同步下载和安装2.2 微力同步网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1.前言 私有云盘作为云存储概念的延伸&#xff0c;虽然谈不上多么新颖&#xff0c;但是其…

内网渗透-域信息收集

域环境 虚拟机应用&#xff1a;vmware17 域控主机&#xff1a;win2008 2r 域成员主机&#xff1a;win2008 2r win7 一.域用户和本地用户区别 使用本地用户安装程序时&#xff0c;可以直接安装 使用域用户安装程序时&#xff0c;需要输入域控管理员的账号密码才能安装。总结…
最新文章