如何在 Java 中转换字符到 ASCII 数值 您所在的位置:网站首页 char转换为intjava 如何在 Java 中转换字符到 ASCII 数值

如何在 Java 中转换字符到 ASCII 数值

2024-07-16 07:40| 来源: 网络整理| 查看: 265

在 Java 中将 char 转换为 int 以将字符转换为 ASCII 值 在 Java 中 getBytes(StandardCharsets.US_ASCII) 从一个字符中获取 ASCII 值 String.chars() 在 Java 9+ 中将字符转换为 ASCII 值

本文将通过实例发现在 Java 中把一个给定字符转换成 ASCII 数值的最简单有效的方法。

在 Java 中将 char 转换为 int 以将字符转换为 ASCII 值

将该字符转换为 ASCII 数值的最简单方法之一是将该字符转换为整型 int。由于我们讨论的是单个字符,我们不能使用多个字符。

请看下面的例子。注意我们使用单引号内的字符 a,使其数据类型为 char。

public class Main { public static void main(String[] args) { int asciiValue = 'a'; System.out.println("ASCII Numeric Value: " + asciiValue); } }

输出:

ASCII Numeric Value: 97 在 Java 中 getBytes(StandardCharsets.US_ASCII) 从一个字符中获取 ASCII 值

为了使这个例子有效,我们将首先得到我们的字符作为一个字符串,然后将该字符串转换为一个字节数组。StandardCharsets.US_ASCII 将确保我们得到正确的输出值。

import java.nio.charset.StandardCharsets; public class Main { public static void main(String[] args) { String s = "b"; byte[] bytes = s.getBytes(StandardCharsets.US_ASCII); System.out.println("ASCII Numeric Value: " + bytes[0]); } }

输出:

ASCII Numeric Value: 98

这种方法的好处是,我们可以直接得到多个字符的 ASCII 值,因为字符在一个字符串中。

我们有一个包含 4 个字符的字符串 s。我们可以按照下面的步骤获取所有这些字符的 ASCII 数值。

import java.nio.charset.StandardCharsets; public class Main { public static void main(String[] args) { String s = "ball"; byte[] bytes = s.getBytes(StandardCharsets.US_ASCII); System.out.println("ASCII Numeric Value of b: " + bytes[0]); System.out.println("ASCII Numeric Value of a: " + bytes[1]); System.out.println("ASCII Numeric Value of l: " + bytes[2]); System.out.println("ASCII Numeric Value of l: " + bytes[3]); } }

输出:

ASCII Numeric Value: 98 ASCII Numeric Value: 97 ASCII Numeric Value: 108 ASCII Numeric Value: 108 String.chars() 在 Java 9+ 中将字符转换为 ASCII 值

在这个方法中,我们将使用 Java 9 中添加的 API,我们可以使用 String.chars() 得到一个 IntStream,然后使用 .boxed() 得到一个 Integer 对象的 Stream。它将以数字形式给我们提供 ASCII 值,然后我们可以将这些值放入 List 中进行循环。

这个例子将字符串 building 作为输入,并打印出字符串中每个字符的 ASCII 值。

import java.util.List; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { String stringValue = "building"; List listOfIntegers = stringValue.chars().boxed().collect(Collectors.toList()); for (int i : listOfIntegers) { System.out.println("ASCII value " + i); } } }

输出:

ASCII value 98 ASCII value 117 ASCII value 105 ASCII value 108 ASCII value 100 ASCII value 105 ASCII value 110 ASCII value 103


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有