0

さて、私はこの単純だが大きな問題を抱えており、実際には解決策を見つけることができません. メイン メソッドの外側ですべての変数を宣言し、メイン メソッドで値を指定しましたが、それらをリンクできないようです。そのため、他のクラスでそれらを呼び出すと、Strings author1 と 2 が空になり、配列も空になります。アーティスト。私はあなたの助けに感謝します。それは私を夢中にさせており、私は急いでいます。

package Medienbibliothek;

java.util.Arrays をインポートします。java.util.Scanner をインポートします。

public class Artist extends Author{

 static String FirstName1;
 static String NickName1;
 static String LastName1;
 static String artist1;

 static String FirstName2;
 static String NickName2;
 static String LastName2;
 static String artist2;


public static String[] artists = new String[]{artist1, artist2};

public static void main(String args[]){



Scanner Person = new Scanner(System.in);

System.out.println("Enter FirstName: ");
FirstName1 = Person.nextLine();

System.out.println("Enter LastName: ");
LastName1 = Person.nextLine();

System.out.println("Enter NickName: ");
NickName1 = Person.nextLine();

String artist1 = (FirstName1 + " " + "\"" + NickName1 + "\"" + " " + LastName1);

System.out.println("Your first artist is: " + artist1);

System.out.println("Enter FirstName: ");
FirstName2 = Person.nextLine();

System.out.println("Enter LastName: ");
LastName2 = Person.nextLine();

System.out.println("Enter NickName: ");
NickName2 = Person.nextLine();

String artist2 = (FirstName2 + " " + "\"" + NickName2 + "\"" + " " + LastName2);

System.out.println("Your second artist is: " + artist2);



System.out.println("Your artists are: " + "\n1." + artist1 + "\n2." + artist2);

final String[] artists = new String[]{artist1, artist2};

System.out.println(Arrays.asList(artists));
4

1 に答える 1

0

関数内に記述するString artist1と、「シャドウ」する新しいローカル変数が宣言されますstatic String artist1;。これは、次のコード内でartist1静的変数ではなくローカル変数を参照することを意味します。これらの不要な宣言を削除してください。

于 2013-01-13T12:42:23.630 に答える