私は Person の配列を作成しようとしています (変数 String name と double total を持つクラス)。しかし、何らかの理由で、2 番目の人物を作成すると、最初の人物が置き換えられます (?)。. .
Person[] p = new Person[40];
p[0] = new Person("Jango", 32);
p[1] = new Person("Grace", 455);
System.out.println( p[0].getName() );
System.out.println( p[1].getName() );
System.out.println( p[0].equals(p[1]) );
出力は次のとおりです。
Grace
Grace
false
なぜそうではないのですか:
Jango
Grace
false
????????????
public class Person {
@SuppressWarnings("unused")
private Person next;
private String name;
private double total;
public Person(String _name)
{
name = _name;
total = 0.0;
next = null;
}
public Person(String _name, double _total)
{
name = _name;
total = _total;
next = null;
}
public String getName()
{
return name;
}
}