迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Java >

在 Java 中把枚举类型转为字符

作者:迹忆客 最近更新:2023/03/26 浏览次数:

Java 中的 Enum 是一种特殊的数据类型或类,它拥有一组常量。我们也可以在枚举中添加构造函数和方法。要在 Java 中创建一个枚举,我们使用关键字 enum,并像类一样给它起一个名字。在这篇文章中,我们将介绍 Java 中将枚举转换为字符串的方法。


在 Java 中使用 name() 将枚举转换为字符串的方法

在第一个例子中,我们将使用 Enum 类的 name() 以字符串形式返回枚举常量的确切名称。下面,我们在类内部创建了一个枚举,但我们可以在类外或类内创建一个枚举。我们将这个枚举命名为 Directions,它包含了作为枚举常量的方向名称。

我们可以使用 name() 方法获取任何常量。Directions.WEST.name() 将以字符串形式返回 WEST,存储在字符串变量 getWestInString 中,然后打印在输出中。

public class EnumToString {
    enum Directions {
        NORTH,
        SOUTH,
        EAST,
        WEST
    }

    public static void main(String[] args) {
        String getWestInString = Directions.WEST.name();
        System.out.println(getWestInString);
    }
}

输出:

WEST

在 Java 中使用 toString() 将枚举转换为字符串

就像 name() 一样,我们有 toString() 方法,但是当涉及到使用一个枚举常量做任何重要的用途时,name() 是首选,因为它返回的是同一个常量,而 toString() 可以在枚举中被覆盖。这意味着我们可以使用 toString() 修改作为字符串返回的内容,我们将在下一个例子中看到。

在这个例子中,我们在需要转换为字符串的常量上使用 toString() 方法。

public class EnumToString {

    enum Currencies {
        USD,
        YEN,
        EUR,
        INR
    }

    public static void main(String[] args) {
        String getCurrency = Currencies.USD.toString();
        System.out.println(getCurrency);
    }
}

输出:

USD

我们在上面已经讨论过,我们可以重写 toString() 方法来修改我们想用枚举常量返回的字符串。在下面的例子中,我们有四种货币作为常量调用枚举构造函数,并传递一个字符串作为参数。

每当常量看到 toString() 方法时,就会把字符串名传给 getCurrencyName 这个字符串变量。现在我们要在枚举里面覆盖 toString() 方法,用字符串返回 getCurrencyName

main() 方法中,我们使用 toString() 方法将 INR 常量作为字符串获取。我们可以在输出中看到,修改后的字符串被打印出来。我们也可以使用 Enum.values() 来打印一个枚举的所有值,它返回一个枚举常量数组,然后在每个常量中循环,把它们打印成字符串。

public class EnumToString {

    enum Currencies {
        USD("USD"),
        YEN("YEN"),
        EUR("EUR"),
        INR("INR");

        private final String getCurrencyName;

        Currencies(String currencyName) {
            getCurrencyName = currencyName;
        }

        @Override
        public String toString() {
            return "Currency: " + getCurrencyName;
        }
    }

    public static void main(String[] args) {
        String getCurrency = Currencies.INR.toString();
        System.out.println("Your " + getCurrency);

        Currencies[] allCurrencies = Currencies.values();
        for (Currencies currencies : allCurrencies) {
            System.out.println("All " + currencies);
        }
    }
}

输出:

Your Currency: INR
All Currency: USD
All Currency: YEN
All Currency: EUR
All Currency: INR

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Java 中获取文件大小

发布时间:2023/05/01 浏览次数:139 分类:Java

Java 提供了不同的方法来获取文件的字节大小。 本教程演示了在 Java 中获取文件大小的不同方法。使用 Java IO 的文件类获取文件大小 Java IO 包的 File 类提供了以字节为单位获取文件大小的功能。

Java 中的文件分隔符

发布时间:2023/05/01 浏览次数:108 分类:Java

本篇文章介绍了 Java 中的文件分隔符。Java 中的文件分隔符 文件分隔符是用来分隔目录的字符; 例如,Unix 使用 /,Windows 使用 \ 作为文件分隔符。

Java 中的文件过滤器

发布时间:2023/05/01 浏览次数:193 分类:Java

本篇文章介绍如何在 Java 中使用 FileFilter。FileFilter 用于过滤具有特定扩展名的文件。 Java内置包IO和Apache Commons IO为FileFilter提供了类和接口来进行文件过滤操作。

Java 获取 ISO 8601 格式的当前时间戳

发布时间:2023/05/01 浏览次数:132 分类:Java

本篇文章介绍了 ISO 8601 日期格式、其重要性及其在 Java 中的使用。 它还列出了一些优点来强调为什么应该使用 ISO 格式来表示日期。

在 Java 中获取数组的子集

发布时间:2023/05/01 浏览次数:142 分类:Java

本篇文章介绍了几种在 Java 中获取数组子集的方法。使用 Arrays.copyOf() 方法获取数组的子集 使用 Arrays.copyOfRange() 方法获取数组的子集

用 Java 填充二维数组

发布时间:2023/05/01 浏览次数:110 分类:Java

二维数组是基于表结构的,即行和列,填充二维数组不能通过简单的添加到数组操作来完成。 本篇文章介绍如何在 Java 中填充二维数组。

Java 中的自然排序

发布时间:2023/05/01 浏览次数:132 分类:Java

Java 中最常用的顺序是自然顺序。 本文将展示如何使用 naturalOrder() 函数对数组进行排序。

计算 Java 数组中的重复元素

发布时间:2023/05/01 浏览次数:202 分类:Java

本篇文章介绍Java计算数组中重复元素的方法。计算 Java 数组中的重复元素。我们可以创建一个程序来计算数组中的重复元素。 该数组可以是未排序的,也可以是已排序的。

Java 中 List 和 Arraylist 的区别

发布时间:2023/05/01 浏览次数:90 分类:Java

表示为单个单元的一组单个对象称为集合。 在 Java 中,Collection 是一个具有多个已定义接口和类的框架,用于将一组对象表示为一个单元。 它允许我们操纵

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便