2017-04-10 7 views
-1

숫자를 알파벳의 해당 문자로 변환하려고합니다.int를 char로 변환

char a = (char)20; 
+0

[이 포스트를보십시오] (http://stackoverflow.com/questions/5328996/java-change-int-to-ascii) 질문은 이미 용어의 알파벳은 매우 정확하지이며, –

+0

을 유래하도록 요청 받았다 번호의 해당 서한의 시스템이 불분명합니다. 저는 A-Z에서부터 26까지의 영문자와 그것들에 1에서 26까지 번호를 매기는 것에 익숙합니다. 그러나 자바는 텍스트 데이터 타입을 위해 유니 코드를 사용합니다. 유니 코드는 해당 문자 (대소 문자 및 대문자)와 그 문자의 일부 또는 전부를 포함하는 특수 스크립트를 적어도 두 가지 형식으로 가지고 있습니다. 또한 모든 문자 (대개 U + 0041와 같은 16 진수로 작성)에 대해 자체 [번호 매기기 시스템] (http://www.unicode.org/charts/nameslist/index.html)을 가지고 있습니다. 이게 네가 말하는거야? –

답변

-1

나는 당신이 할 수 있다고 생각합니다. 이것은 a-z에서 작동합니다. A-Z을 사용하려면 96을 (를) 64으로 바꿉니다.

0

이이

Random rand = new Random(); 
int TargetNumber = rand.nextInt(25) + 1; 
char c = (char)(TargetNumber+96); 

이 생성 된 값으로 96을 추가 시도하고 유형은 char으로에게 그것을 캐스트 :

+0

downvoter, 설명해 주시겠습니까? –

2

표시된 것처럼 here 알파벳순 문자는 65 또는 97 (대문자 사용법에 따라 다름)로 시작하므로 값에 64 또는 96을 추가 한 다음 char로 변환하면됩니다.

Random rand = new Random(); 
int TargetNumber = rand.nextInt(25) + 1; 
char TargetChar = (char) (TargetNumber+64); 
+0

96을 추가 할 수 있도록 해당 소문자가 필요합니까? 도와 주셔서 감사합니다! – java1234

+0

예,'Char TargetChar = (char) (TargetNumber + 96);'는 소문자 char – Nasto