如何在 Java 中转换字符到 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<Integer>
中进行循环。
这个例子将字符串 building
作为输入,并打印出字符串中每个字符的 ASCII 值。
import java.util.List;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
String stringValue = "building";
List<Integer> 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
相关文章
如何在 Java 中把 Char 转为 Int
发布时间:2023/08/15 浏览次数:58 分类:Java
-
本文讨论了在 Java 中把 char 转换为 int 的方法。使用 Character.getNumericValue(ch) 将 char 转换为 int
如何将 ASCII 码转换为字符
发布时间:2023/08/15 浏览次数:157 分类:Java
-
本文讨论了如何使用 Java 中的方法将一个 ASCII 码转换为字符。此外,我们还演示了如何将大写字母转换成小写字母,反之亦然。
在 Java 中生成随机字符
发布时间:2023/08/15 浏览次数:57 分类:Java
-
在本文中,我们将介绍如何使用几种方法生成一个随机字符。我们将介绍三种方法,并举例说明,以便更好地理解这个主题。在 Java 中使用 random.nextInt() 生成随机字符
在 Java 中检查字符是否是字母数字
发布时间:2023/08/15 浏览次数:146 分类:Java
-
本文将介绍在 Java 中我们如何检查一个字符是否为字母数字。Java 中的字符可以容纳字母、数字以及特殊符号。在这里,我们将看到两种方法来检查该字符所包含的内容。
在 Java 中从输入中获取一个字符
发布时间:2023/08/15 浏览次数:150 分类:Java
-
本文将介绍几种在可用于 Java 的输入中获取一个字符的方法。我们可以在 Java 中输入和读取一整句话,但读取单个字符的方法却很少。下面的例子展示了几种方法以及如何使用它们。
比较 Java 中的字符
发布时间:2023/08/15 浏览次数:91 分类:Java
-
本文将介绍如何在 Java 中比较字符。在 Java 中使用 Character.compare() 进行字符比较
在 Java 中把字符转为大写/小写
发布时间:2023/08/14 浏览次数:136 分类:Java
-
本文将介绍将字符转换为小写/大写字符的方法。我们有四种方法,我们将在下面的例子中看到。使用 toUpperCase()/toLowerCase() 方法将一个字符转换为大写/小写
在 Java 中表示空字符
发布时间:2023/08/14 浏览次数:175 分类:Java
-
本文介绍如何在 Java 中表示空字符。在 Java 中,我们可以有一个空的 char[] 数组,但我们不能有一个空的 char,因为如果我们说 char,那么 char 至少代表一个字符,而空的 char 没有意义。
在 Java 中初始化 Char
发布时间:2023/08/14 浏览次数:182 分类:Java
-
本文介绍在 Java 中如何初始化 char 和 char 类型的初始值。要在 Java 中初始化字符,我们可以使用任何字符值,例如空字符或\0,甚至是字符值本身。