-2

人物の名前、住所、電話番号などを格納する配列があり、人物が存在するかどうかを検索する場合、配列の値が指定された値と等しいかどうかを確認しますが、複数の配列を確認する方法がわかりませんこのステートメントの値

if (((Person) object.getFullName().equals(this.information[0] .....))) 

this.information[1] が [1] と [2] の両方が人物の氏名を保持していることも等しいことを確認するにはどうすればよいですか?

以下のコードを含めました。問題はコードの最後の数行にあります。

助けてくれてありがとう!!!!

public class Person
{
    private String [] information = new String [7];

    public Person()
    {
        for (int i = 0; i < information.length; i++)
        {
            information [i] = null; 
        }
    }

    //construct a person object storing values in array
    public Person (String lName, String fName, String st, String city, String state, String zip, String phone)
    {
        information [0] = lName;
        information [1] = fName; 
        information [2] = st;
        information [3] = city;
        information [4] = state; 
        information [5] = zip;
        information [6] = phone; 

    }

    public void setFullName(String lastname, String firstname) 
    {
        if (lastname != null && firstname != null)
        {
            this.information[0] = lastname;
            this.information[1] = firstname;
        }
    }



    //set entire address together 
    public void setCompleteAddress(String street, String city, String state, String zip)
    {
        if (street != null && city != null && state != null && zip != null)
        {
            this.information[2] = street;
            this.information[3] = city;
            this.information[4] = state; 
            this.information[5] = zip;
        }
    }

    //set phone number 
        public void setPhoneNumber(String phone)
        {
            if (phone != null)
            {
                this.information[6] = phone;
            }
        }

        //get lastname 
        public String 


        //get full name 
        public String getFullname()
        {
            return this.information[0] + "  " + this.information[1];
        }

        //get full address
        public String getFullAddress()
        {
            return this.information[2] + " " +  this.information[3] + " "  + this.information[4] + " " + this.information[5];
        }


        //to string method 
        public String toString()
        {
            String temp = "Person: ";
            for (int i = 0; i < information.length; i++)
            {
                temp = temp + information[i];
            }
            return temp;
        }

        //searches if person exists 
        public boolean equals (Object object)
        {
            if (!(object instanceof Person || object == null)){
                return false 
            }
            if (((Person) object.getFullName().equals(this.information[0] .....)))
        }
}
4

2 に答える 2

0

よりクリーンなアプローチは

  • さまざまなフィールドのゲッターとセッターを持つ Person Javabean
  • これらのフィールドを比較する equals メソッド。
于 2013-03-17T17:26:27.497 に答える
0

toString()のメソッドを使用してPerson、次の方法で等しいかどうかを確認できます。

public boolean equals (Object object)
    {
        if (!(object instanceof Person || object == null)){
            return false 
        }
        Person per = (Person)object;
        if ((this.toString()).equals(per.toString()))
        {
           return true;
        }
        return false;
    }
于 2013-03-17T17:26:55.603 に答える