2017-04-10 248 views
-1

我正在尋找將數字轉換爲字母表中相應的字母。將int轉換爲char

+0

[試試這個帖子(http://stackoverflow.com/questions/5328996/java-change-int-to-ascii)問題已經被問StackOverflow的 –

+0

術語字母是不是很精確,一個號碼的相應字母系統不清楚。我熟悉來自A-Z的26個字母的英文字母以及將它們編號爲1到26的想法。但是,Java使用Unicode來表示文本數據類型。對於這些字母(小寫字母和大寫字母),Unicode至少有兩種形式,以及一些具有部分或全部字母的專用腳本。它對每個字符都有自己的[編號系統](http://www.unicode.org/charts/nameslist/index.html)(通常以十六進制編寫,如U + 0041)。你是這個意思嗎? –

回答

-1

我認爲你可以這樣做:

char a = (char)20; 
0

試試這個

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

這增加96所產生的價值,然後類型轉換它變成一個char。這適用於a-z。通過A-Z取代96,由64取代。

+0

downvoter,謹慎解釋? –

2

如所見here字母字符從65或97開始(取決於大小寫),因此您只需將64或96添加到您的值中,然後將其轉換爲字符。

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