2017-02-03 128 views
-1

我應該使用Java中的掃描器來接收14個字符的輸入並具有大寫格式的所有字母字符輸出。我試着輸入一些我通過Google找到的代碼,比如「str.toUpperCase(Locale.ENGLISH);」,但它告訴我str無法解析並且語言環境無法解析。當我在這裏搜索時,我得到了大寫特定字符或計數字符的結果。我只需要特定的輸入行被大寫。從java中的掃描器輸入大寫字母的大寫字母

以下是我目前的情況。我正在使用eclipse java霓虹燈

import java.util.Scanner; 

public class MemberIDLotz { 
    // Everette Lotz 
    public static void main(String[] args) { 
     Scanner string = new Scanner(System.in); 

     // We're going to get a 14 char string from a user. 
     System.out.println("Please enter in a 14 character long ID"); 
     String name = string.next(); 
     str.toUpperCase(Locale.ENGLISH); 

     string.close(); 
    } 
} 

感謝您提前給予的幫助。

*編輯:好的,它不再給我一個錯誤信息,是的,我只是複製和粘貼代碼。但是,當它打印出不是大寫格式的文件時。我把下面的右後 「字符串名稱= ......」,並刪除了str.toUppercase()行:

System.out.println(name); 
name = name.toUpperCase();` 
+2

您沒有一個變量'str'。你可能複製粘貼來自示例代碼。使用'name.toUpperCase()'。 – Mordechai

+1

重新編輯,在轉換之前打印它。 – EJP

+0

因此,如果我理解正確,我會把.toUpperCase,然後string.next()? – Everette

回答

1

是否有你不立即大寫的原因?

String name = string.next().toUpperCase() 
+0

該任務是從某人處獲取14char的輸入,然後對其進行格式化。因此,如果他們輸入Input:X839WS21R4E877,那麼我必須輸出它:Display:X-839 WS21 R4-E87(7)。教,還表示,如果輸入以小寫輸入,那麼它應該輸出在上面。除非你在代碼中的意思是大寫嗎?我要去學校編程,所以我在這方面不完全「知識淵博」。 – Everette

+1

我不明白你爲什麼不能立即大寫。這是我的觀點。當你的問題可能是這兩個步驟時,你的問題就會出現。 –

+0

好吧,如果我理解正確,通過使用您提供的大寫字母的代碼,就好像我將代碼放置得更低一樣,就像第二步。正確? – Everette

1

更改爲

name = name.toUpperCase(Locale.ENGLISH); 

或者更簡單地說

name = name.toUpperCase(); 
0

您還可以添加裝飾它,如果你願意,它是一個工作示例:

String choice; 

Scanner s = new Scanner(System.in); 
choice = s.nextLine().trim().toUpperCase();