Java에서 문자를 ASCII 숫자 값으로 변환하는 방법
-
Java에서 문자를 ASCII 값으로 변환하기 위해
char
를int
로 캐스트 -
Java의 문자에서 ASCII 값을 가져 오는
getBytes(StandardCharsets.US_ASCII)
-
Java 9+에서 문자를 ASCII 값으로 변환하는
String.chars()
이 기사에서는 예제를 통해 주어진 문자를 Java에서 ASCII 숫자 값으로 변환하는 가장 쉽고 효과적인 방법을 알아 봅니다.
Java에서 문자를 ASCII 값으로 변환하기 위해char
를int
로 캐스트
문자를 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의 문자에서 ASCII 값을 가져 오는getBytes(StandardCharsets.US_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
Java 9+에서 문자를 ASCII 값으로 변환하는String.chars()
이 메서드에서는 Java 9에 추가 된 API를 사용합니다.String.chars()
를 사용하여IntStream
을 가져온 다음.boxed()
를 사용하여Integer
객체의 스트림을 가져올 수 있습니다. 그것은 우리가 반복하기 위해List <Integer
에 넣을 수있는 ASCII 값을 수치 적으로 제공 할 것입니다.
이 예제는 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
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn