簡體   English   中英

使用掃描器讀取文本,存儲在數組中,並為每個循環使用大寫輸出Java

[英]Reading text using scanner, storing in array and outputting uppercase using for each loop Java

我必須編寫一個程序來從用戶(鍵盤掃描儀)中讀取10個名稱並將它們存儲在數組中。 然后遍歷數組並以大寫形式顯示名稱(每個循環使用a來顯示所有名稱)。 我該怎么做? 目前,我有:

import java.util.Scanner;

public class Names
{
    public static void main(String[] args) throws Exception
    {
        Scanner nameScan = new Scanner(System.in);
        String[] names = new String[10];
        String[] namesUpper = new String[10];

        System.out.print("Enter a name : ");
        names=nameScan.next(); 


        namesUpper=names.toUpperCase();
        System.out.println("Names in upper case: "+namesUpper);
    } 
}

到目前為止,我有這個,但仍然無法正常工作。 請問我哪里出問題了? 謝謝

import java.util.Scanner;

    public class NamesReAD
    {
        public static void main(String[] args) throws Exception
        {
            Scanner nameScan = new Scanner(System.in);
            String[] names = new String[10];


            for (int i = 0 ; i < names.length ; i++) {
                System.out.print("Enter a name: ");
                names[i] = nameScan.nextLine().toUpperCase();
            }
            nameScan.close();
            System.out.println("Here is name"+names);
        }
    }
for (int i = 0 ; i < names.length ; i++) {
    System.out.print("Enter a name: ");
    names[i] = nameScan.nextLine().toUpperCase();
}

除了.toUpperCase();以外,本節將起作用。 不會將名稱更改為大寫。

您需要一個for -loop遍歷數組並將適當的數據放在每個索引處。 例如,

for (int i = 0 ; i < names.length ; i++) {
    System.out.print("Enter a name: ");
    names[i] = nameScan.nextLine();
}

這將要求用戶輸入名稱10次,並使用用戶輸入的內容填充names數組。 現在,您實際上不必創建第二個數組( namesUpper ); 您可以再次循環遍歷names並打印names[i].toUpperCase() (或按照您的建議使用for -each循環,但是想法是一樣的)。


現在,這兩行將無法編譯:

names = nameScan.next(); 
namesUpper = names.toUpperCase();

因為1) names是一個數組,並且nameScan.next()返回一個字符串,並且2) names沒有名為toUpperCase方法。


編輯 :或者,當您將names添加到names數組中時,可以將它們存儲為大寫形式:

for (int i = 0 ; i < names.length ; i++) {
    System.out.print("Enter a name: ");
    names[i] = nameScan.nextLine().toUpperCase();
}

這樣,當您打印數組的內容時,您將不必擔心任何事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM