2015-04-22 233 views
0

這是我將字符串轉換爲ASCII和ASCII轉換爲字符串的代碼。當用戶輸入帶有空格的文本時,所有文本都沒有轉換,但是如果我在程序中寫入文本轉換的文本,我遇到了問題。這是我的輸入「Java很容易」將字符串轉換爲ASCII和ASCII字符串

String str = input.next(); 
//String str = "Java is easy"; 

char ch[] = str.toCharArray(); 
int num[] = new int[str.length()]; 

for (int i = 0; i < str.length(); i++) { 
    System.out.print((int)ch[i] + " "); 
    num[i] = (int)ch[i]; 
} 
System.out.println(""); 
for (int j = 0; j < str.length(); j++) { 
    System.out.print((char)num[j]); 
} 
System.out.println(""); 
+0

所以會發生什麼?閱讀用戶輸入代碼在哪裏? –

+0

掃描儀輸入=新掃描儀(System.in); – gemy

+0

'String'和'char'用於UTF-16編碼單元,其中一個或兩個編碼Unicode編碼點。如果您希望Unicode的子集與ASCII相同,則必須檢查。 –

回答

2

Scanner.next()讀取一個單詞,即「Java」。

Scanner.nextLine()讀取整條生產線,即 「Java是簡單的」

你應該改變

String str = input.next(); 

String str = input.nextLine(); 
相關問題