配列の要素は文字列に変換し、最初の文字を印刷しますか?

sethFrias:

私は、ユーザー入力から文字列の配列を作成し、各要素の最初の文字を印刷する必要があります。私はこれを達成するためにどのように私は何とか文字列に配列を変換する必要があることを認識しますが、わかりませんよ。私はと失敗しましたArrays.toString

以下の私のコードです:

import java.util.Scanner;
import java.util.Arrays;
class Main{
    public static void main(String[] args){
        Scanner inp = new Scanner(System.in);
        System.out.println("How many names would you like to enter in this array?: ");
        int numName = inp.nextInt();
        String nameArray[] = new String[numName];
        System.out.println("Enter the names: ");

    for(int i = 0; i <= nameArray.length; i++){
          nameArray[i] = inp.nextLine();
        }
        System.out.println(nameArray.charAt(0));
    }
}
GBlodgett:

あなたはすべてを反復処理する必要があるStringArrayして、最初に印刷しますcharあなたは、この使用して行うことができcharAt()、ループを。

for(String str : nameArray) {
   System.out.println(str.charAt(0));
}

それとも、使用することができますArrays.stream()

Arrays.stream(nameArray).forEach(e -> System.out.println(e.charAt(0)));

また、あなたのコードを持つだけでいくつかの問題:

  • あなたは入るしようとしている。このため、問題nextInt()改行を消費しません。空白の追加nextLine()後にコールをnextInt()

  • あなたはまでループしている<= array.length原因となるindexOutOfBoundsエラーを。あなたはより小さくなるまでループのみに必要array.length

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=208980&siteId=1
おすすめ