001    
002    
003    /**
004            アドレス情報を表すクラス
005            @author Fumitaka Makino
006            @since J2SDK 1.2
007            @see AddressBook AddressBookクラス
008    */
009    public class AddressData {
010            
011            /**
012                    氏名
013            */
014            private String name = null;
015            
016            /**
017                    電話
018            */
019            private String tel = null;
020            
021            /**
022                    住所
023            */
024            private String addr = null;
025            
026            
027            /**
028                    アドレスデータのコンストラクタ
029                    @param sname 名前
030                    @param stel 電話番号
031                    @param saddr 住所
032            */
033            public AddressData( String sname , String stel , String saddr ){
034                    
035                    name = sname;
036                    tel  = stel;
037                    addr = saddr;
038                    
039            }
040            
041            /**
042                    名前をセットします。
043                    @param str 名前
044            */
045            public void setName(String str){
046                    name = str;
047            }
048            
049            /**
050                    名前を取得します。
051                    @return String 名前
052            */
053            public String getName(){
054                    return name;
055            }
056            
057            
058            /**
059                    電話番号をセットします。
060                    @param str 電話番号
061            */
062            public void setTel(String str){
063                    tel = str;
064            }
065            
066            /**
067                    電話番号を取得します。
068                    @return String 電話番号
069            */
070            public String getTel(){
071                    return tel;
072            }
073            
074            
075            /**
076                    住所をセットします。
077                    @param str 住所
078            */
079            public void setAddr(String str){
080                    addr = str;
081            }
082            
083            /**
084                    住所を取得します。
085                    @return String 住所
086            */
087            public String getAddr(){
088                    return addr;
089            }
090            
091            
092            /**
093                    情報をまとめてStringとして返す。もちろんObjectクラスのtoStringをオーバーライドしてます。<BR>
094                    「氏名」/「電話」/「住所」
095                    @return String 氏名、電話、住所の情報
096            */
097            public String toString(){
098                    
099                    return name + "/" + tel + "/" + addr;
100                    
101            }
102            
103            
104            
105            /**
106                    動作確認用のメインメソッドです。アドレス帖が出来上がったらこの部分はコメントアウトして構わないです。
107            */
108            public static void main( String[] args ){
109                    
110                    //アドレス配列の準備
111                    AddressData[] addrs = { new AddressData("牧野","090-1234-XXXX","神奈川県川崎市"),
112                                                                    new AddressData("堀","090-4567-XXXX","神奈川県横浜市"),
113                                                                    new AddressData("野田","090-9874-XXXX","埼玉県さいたま市")};
114                    
115                    //一覧出力
116                    System.out.println("\n一覧出力");
117                    for( int i=0;i<addrs.length;i++ ){
118                            
119                            //toStringメソッドをオーバーライドしてあるから簡単
120                            System.out.println( addrs[i] );
121                            
122                    }
123                    
124                    //インデックス番号2を出力
125                    System.out.println("\nインデックス番号2を出力");
126                    System.out.println( addrs[2] );
127                    
128                    //堀を検索
129                    System.out.println("\n堀を検索");
130                    String search = "堀";
131                    for( int i=0;i<addrs.length;i++ ){
132                            
133                            //addrs[i]の名前が「堀」を含んでいれば出力
134                            if( addrs[i].getName().indexOf( search )>-1 ){
135                                    System.out.println( addrs[i] );
136                            }
137                            
138                    }
139                    
140            }
141            
142    }
143