这是我参与11月更文挑战的第13天,活动详情查看:2021最后一次更文挑战
今天继续~
枚举
- 一般用来表示一组常量,比如1年4个季节
- 使用关键字
enum
定义
1 | java复制代码enum Game{ |
内部类中使用枚举
1 | java复制代码public class Test{ |
ps:可以把枚举相应的理解为键值对相同的列表
迭代枚举元素
1 | java复制代码enum Game{ |
ps:values()
可以获取所有值,通过java加强for循环来循环获取的值并把他们输出
在 switch 中使用枚举类
1 | java复制代码enum Game{ |
ps:枚举实例化所获取的值即单个值本身,可直接用在switch里进行匹配
values()
, ordinal()
和 valueOf()
方法
values()
- 返回枚举中的所有值
ordinal()
- 返回枚举中的所有索引
valueOf()
- 返回指定字符串的枚举常量
1 | java复制代码enum Game{ |
枚举类
- 枚举可以拥有自己的变量,方法,构造函数
- 枚举的构造函数必须是private
- 如果枚举类里面有抽象方法的话,它的实例必须实现它
1 | java复制代码enum Game{ |
包
- 用于区别命名空间
- 把功能相关的类或接口放在一个包里方便应用
- 通过package关键字定义,要写在最前面
比如一个路径为code/java/hello.java的包定义应该为:
1 | java复制代码package code.java |
java自带的包
java.lang
- 打包基础的类
java.io
- 包含输入输出功能的函数
创建包
写出两个相同包的文件:
1 | java复制代码package game; |
1 | java复制代码package game; |
然后去编译他们,通过mkdir
来创建包:
1 | powershell复制代码mkdir game |
import 关键字
- 使用import关键字可以导入想要用的包
1 | java复制代码import 包名.* |
ps:*
代表导入这个包中的所有东西,可以把*
替换成相应的类名来引入相应的类
package 的目录结构
类放在包中会有两种情况:
- 包名成为类名的一部分
- 包名必须与目录结构吻合
Java 数据结构
枚举
- 枚举接口定义了一种从数据结构中取回连续元素的方式
位集合
- 位集合类实现了一组可以单独设置和清除的位或标志
- 在设置和清除布尔值的时候非常有用
向量
- 向量和传统数组十分类似,但是向量可以动态变化
栈
- 可以想象成一个开口容器,先进后出
字典
- 它是一个键值对的集合
- 它是一个抽象类
哈希表
- 是一种用户定义键结构的基础上来组织数据的手段
属性
- 属性列表中每一个键对应的值都是一个字符串
今天就学到这里,晚安~
本文转载自: 掘金