Java에서 int를 char로 변환
다음은 코드 스니펫입니다.
int a = 1;
char b = (char) a;
System.out.println(b);
하지만 공허한 결과를 얻습니다.
int a = '1';
char b = (char) a;
System.out.println(b);
나는 1을 출력으로 받을 것이다.
누가 설명 좀 해줄래?첫 번째 스니펫처럼 int를 char로 변환하려면 어떻게 해야 하나요?
int a = 1;
char b = (char) a;
System.out.println(b);
는 Unicode 코드 포인트1로 문자를 출력합니다(머리글 시작 문자, 출력할 수 없습니다.다음 표 참조: C0 컨트롤과 기본 라틴어, ASCII와 동일합니다).
int a = '1';
char b = (char) a;
System.out.println(b);
유니코드 코드 포인트 49('1'에 해당하는 문자)로 출력됩니다.
를 캐스트하거나 을 더하면 .Character.forDigit(a, 10);
.
「」를 int
예를 들어 를 사용할 수 있습니다.
제 답은 jh314의 답변과 비슷하지만 조금 더 자세히 설명하겠습니다.
이 경우 수행할 작업은 다음과 같습니다.
int a = 1;
char b = (char)(a + '0');
System.out.println(b);
여기서는 문자를 ASCII 값으로 표시하기 때문에 '0'을 사용했습니다.'0'은 문자이며 48의 값으로 표시됩니다.
입력했습니다.(a + '0')
이를 합산하기 위해 Java는 '0'을 ASCII 값인 48과 a가 1로 변환하여 합계가 49가 되었습니다.다음 중 하나:
(char)(49)
int
로로 합니다.char
는 '입니다.49 ASC'1'로 하다.할 수 또, 「문자」를 사용하는 보다, 보다 하고 좋은 이 됩니다..toString()
요..charAt()
★★★★★★ 。
계신 것 요.Character.forDigit
★★★★
final int RADIX = 10;
int i = 4;
char ch = Character.forDigit(i, RADIX);
System.out.println(ch); // Prints '4'
char에서 int로 되돌릴 수 있는 메서드도 있습니다.
int i2 = Character.digit(ch, RADIX);
System.out.println(i2); // Prints '4'
으로써, 이 해 주세요.RADIX
16진수( 16) 및 16)까지의 할 수 .Character.MAX_RADIX
일명'이라고도 합니다.
int a = 1;
char b = (char) a;
System.out.println(b);
홀라, 나도 같은 문제를 겪었지만 내가 한 일은 다음과 같은 코드였어.
int a = 1
char b = Integer.toString(a).charAt(0);
System.out.println(b);
이를 통해 10진수 값을 문자 유형으로 얻을 수 있습니다.인덱스 0에 charAt()를 사용했습니다.그 이유는 String에 들어가는 값이 a뿐이고, 아시다시피 String에 들어가는 a의 위치는 0에서 시작되기 때문입니다.
내 영어가 잘 설명되지 않는다면, 너에게 도움이 되었으면 좋겠어.
'1' 또는 'a'로 출력할 수 있습니다.
'1'을 입력으로 원하는 경우:
int a = 1;
char b = (char)(a + '0');
System.out.println(b);
'a'를 입력으로 원하는 경우:
int a = 1;
char b = (char)(a-1 + 'a');
System.out.println(b);
java는 ascii 값을 char :)로 변경합니다.
int a = 1;
char b = (char) (a + 48);
ASCII 에서는, 문자 마다 고유의 번호가 있습니다.그리고 문자 '0'은 소수점 48, '1'은 49 등입니다.그래서 만약에
char b = '2';
int a = b = 50;
char에 cast integer를 입력하면 해당 int의 ASCII 값이 반환됩니다(좀 더 이해하기 위해 ASCII 테이블을 살펴봅니다).
int a=68;
char b=(char)a;
System.out.println(b);//it will return ascii value of 68
//output- D
여기서의 진짜 「질문」에 답한 사람은 없습니다.int를 문자로 올바르게 변환하고 있습니다.ASCII 테이블에서 10진수 값 01은 인쇄되지 않은 문자인 "start of heading"입니다.ASCII 테이블을 검색하여 33 ~7E 사이의 int 값을 변환해 보십시오.이것에 의해서, 문자를 확인할 수 있습니다.
원형이 아닌 클래스 유형에 대해 이야기할 경우 다음 방법을 사용해야 합니다.
Integer someInt;
Character someChar;
someChar = (char)Integer.parseInt(String.valueOf(someInt));
Java에서 char는 int입니다.첫 번째 스니펫은 기본 문자 인코딩 방식(Unicode일 가능성이 있음)의 값 1에 대응하는 문자를 출력합니다.Unicode 문자 U+0001은 인쇄되지 않은 문자이므로 출력이 표시되지 않습니다.
문자 '1'을 인쇄하려면 사용 중인 부호화 방식에서 '1'의 값을 조회하면 됩니다.유니코드에서는 49(ASCII와 동일)입니다.단, 0 ~9 자리에서만 동작합니다.
하는 것이 수 Java 의 「Dring」을 하는 것이 .【Java】【Java】【Java】【Java】【Java】키로 했다.toString()
★★★★
int a = 1;
String b = toString(a);
System.out.println(b);
이것은, 시스템 인코딩의 종류에 관계없이 동작해, 복수 자리수의 번호에 대응합니다.
ASCII 코드에 근거해 ASCII 문자를 인쇄해, 유니코드 문자등의 ASCII 문자를 넘기지 않게 하려면 , 변수를 바이트로서 정의하고 나서, (char) 변환을 사용합니다.
public static void main(String[] args) {
byte b = 65;
for (byte i=b; i<=b+25; i++) {
System.out.print((char)i + ", ");
}
그나저나 문자 'A'의 ASCII 코드는 65입니다.
정수값이 알파벳/문자의 ASCII 값인지 확인합니다.
그렇지 않다면 만들어라.
for e.g. if int i=1
64를 더하면 65 = ASCII 값 'A'가 됩니다. 그런 다음 사용
char x = (char)i;
print x
// 'A' will be printed
「 」를 사용하는 에는, .int
로 할 수 char
ASCII를 사용하다
예제:
int i = 2;
char ch = Integer.toString(i).charAt(0);
System.out.println(ch);
설명:
를 사용하여 로 변환합니다.charAt()
에는 1자리는 1자리 입니다.0
에게 주어지다charAt()
★★★★★★ 。
" " "를 변환합니다.int
타입에 대해서String
,
int a = 1;
String value = String.valueOf(a);
다음에 그 말을 .String
로로 합니다.char
.
char newValue = value.charAt(0);
이렇게 하면 빈 출력을 피할 수 있습니다.
System.out.println(newValue);
완전한 변환 컨셉에 대해서는, 다음의 프로그램을 봐 주세요.
class typetest{
public static void main(String args[]){
byte a=1,b=2;
char c=1,d='b';
short e=3,f=4;
int g=5,h=6;
float i;
double k=10.34,l=12.45;
System.out.println("value of char variable c="+c);
// if we assign an integer value in char cariable it's possible as above
// but it's not possible to assign int value from an int variable in char variable
// (d=g assignment gives error as incompatible type conversion)
g=b;
System.out.println("char to int conversion is possible");
k=g;
System.out.println("int to double conversion is possible");
i=h;
System.out.println("int to float is possible and value of i = "+i);
l=i;
System.out.println("float to double is possible");
}
}
희망, 그것은 적어도 무엇인가에 도움이 될 것이다.
문자를 대응하는 정수로 변환하는 경우는, 다음과 같이 할 수 있습니다.
int a = (int) 'a';
char b = (char) a;
System.out.println(b);
ASCII 에서는, 통상은 인쇄할 수 없는 항목이 있기 때문에 발생합니다.
예를 들어 97~122는 소문자 a~z에 대응하는 정수이다.
public class String_Store_In_Array
{
public static void main(String[] args)
{
System.out.println(" Q.37 Can you store string in array of integers. Try it.");
String str="I am Akash";
int arr[]=new int[str.length()];
char chArr[]=str.toCharArray();
char ch;
for(int i=0;i<str.length();i++)
{
arr[i]=chArr[i];
}
System.out.println("\nI have stored it in array by using ASCII value");
for(int i=0;i<arr.length;i++)
{
System.out.print(" "+arr[i]);
}
System.out.println("\nI have stored it in array by using ASCII value to original content");
for(int i=0;i<arr.length;i++)
{
ch=(char)arr[i];
System.out.print(" "+ch);
}
}
}
언급URL : https://stackoverflow.com/questions/17984975/convert-int-to-char-in-java
'programing' 카테고리의 다른 글
vuejs v2.0에서 컴포넌트로 데이터 전달 (0) | 2022.08.09 |
---|---|
Requirejs에서 Vue.js를 사용하는 방법 (0) | 2022.08.09 |
JTextField로의 값 변경 리스너 (0) | 2022.08.09 |
.toArray(새로운 MyClass[0]) 또는 .toArray(새로운 MyClass[myList.size()])? (0) | 2022.08.09 |
vue-router를 체크인합니다.각자가 루트에 대한 접근을 제한하지 않습니다. (0) | 2022.08.09 |