この場合、名前を入力します。メインクラスから名前を入力してnewClassに渡したい。もう一度別の名前を入力しようとすると、前の名前が上書きされていることがわかりました。クラスの値を入力するときに値を上書きしない方法は?
public class JavaApplication107 {
public static void main(String[] args) {
byte number;
NewClass obj = new NewClass();
do{
System.out.println("MENU : ");
System.out.println("1. Show Data");
System.out.println("2. Input Data");
System.out.println("3. Exit");
Scanner sc1 = new Scanner(System.in);
Scanner sc2 = new Scanner(System.in);
System.out.print("Input Number : ");
number = sc1.nextByte();
switch (number){
case 1:
obj.setShowBiodata();
break;
case 2:
System.out.print("Input your name : ");
String strTmp = sc2.nextLine();
obj.setName(strTmp);
break;
}
}while(number != 3);
}}
BLOCKQUOTE
public class NewClass {
private String mName;
void setName(String name){
mName = name;
}
void setShowBiodata(){
System.out.println("Name : " + mName);
}}
だから私は、複数の名前
はい?それは 'setName'がするものなのですか?どこに新しい(または古い)名前が格納されるはずです - それはあなたの説明からはっきりしません – UnholySheep
それで、値を上書きしないようにメソッドを作る方法は?私は配列か別のものを使うべきですか? –
あなたはまだ何が起こったのか説明していません。しかし、あなたは 'ArrayList'(この場合、単純な配列よりも好ましい)を使いたいと思うように聞こえます。 –
UnholySheep