栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础(杂录):

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础(杂录):

文章目录
  • 前言
  • 枚举类型
    • 1. 枚举类型的创建:
    • 2. 枚举变量:
  • ArrayList -- 动态数组
    • 1. 数组创建:
    • 2. 数组操作:

前言

本系列的内容大都是源自《Java核心技术》第10版(以下称《核心技术》)以及菜鸟教程中的内容,该文章主要记录一些当前过程比较重要,但不至于专门写一篇的一些内容(本篇持续更新~)。


以下是本篇文章正文内容,下面案例可供参考

枚举类型

  C++中的枚举类型可以看作是整数集的扩展,用名字来增强辨识度的常量。但在Java中,枚举类型是对象的实例化,也可以拥有自己的域、构造函数、类方法等等,因此是比C++中的枚举更加灵活的结构。值得注意的是,所有的枚举类型都继承自Enum类。

1. 枚举类型的创建:
public enum Size {
    SMALL("S"), MEDIUM("M"), LARGE("L"), EXTRALARGE("EL");

    private String abbr;
    private Size(String abbr){
        this.abbr = abbr;
    }
    public String getAbbr(){return abbr;}
}

  上述代码定义了Size枚举类型,在类型中枚举了SMALL, MEDIUM, LARGE, EXTRALARGE四个枚举量,并且枚举类拥有abbr这个属性,拥有构造函数,还拥有一个类方法用于获取属性值。

2. 枚举变量:

  枚举类型也是一种类,所以枚举变量的创建过程与普通的对象变量是类似的。但由于枚举变量的取值空间是我们自己定义的,因此对其赋值需要用比较特殊的方法Enum.valueOf(),利用与枚举实例相同名称的字符串来为其指定需要的值。

Scanner in = new Scanner(System.in);
System.out.print("Enter a size: (SMALL, MEDIUM, LARGE, EXTRALARGE): ");
String input = in.next().toUpperCase();
// 根据数据的文本信息构造枚举类对象
Size size = Enum.valueOf(Size.class, input);

  上述过程利用input创建Size类对象,当我们使用一个Size中不存在的实例名称时会报错

  至于如何判断枚举对象是否等于特定值,与普通的比较并无差异,注意枚举类中的实例使用Class.Instance进行访问

if(size == Size.EXTRALARGE){
      System.out.println("Well size!");
}
ArrayList – 动态数组 1. 数组创建:
ArrayList int_arr = new ArrayList<>(100);

  上述代码创建了一个容量(Capacity)为100,类型为int的动态数组。需要注意:

  • 容量是指数组能够存储对象个数的最大值,若超过容量,则会重新为数组分配空间。
  • 动态数组的另一个属性是size,表示当前数组中存储了多少元素
  • 动态数组的类型参数必须是class,而不能是基本类型,因此这里使用了自动装箱的类型Integer,而不是int
2. 数组操作:

  动态数组的操作不如对象数组方便,通常使用以下方法:

  • add(x):在数组末尾添加元素
  • add(n, e):在数组的第n个位置插入元素e
  • set(n, e):将第n个元素设为e
  • size():返回数组当前存储的元素个数
  • toArray():将动态数组变为对象数组(对象数组的大小与动态数组的size相同)
  • remove(n):将位置n的元素移除
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/863229.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号