解答例 - 実習課題1 - 3.Set
(実習課題1)
以下のコンソール・プログラムを作成しなさい。
- 人間を表すクラスを作成し、それには「名前」「年齢」を管理する要素を持たせる事。
- 「HashSet」に上記のクラスのインスタンスを複数挿入した後、「Iterator」を介して一覧を表示する事。
- 同じインスタンスを複数挿入し、「Set」では重複して同じインスタンスが管理されない事を確認する事。
解答例
package com.techscore.utility.chapter3.exercise1; import java.util.HashSet; import java.util.Iterator; /** * HashSetExample.java * TECHSCORE Javaユーティリティ3章 実習課題1 * * Copyright (c) 2004 Four-Dimensional Data, Inc. */ public class HashSetExample { public static void main(String[] args) { // ハッシュセットを初期化する。 HashSet set = new HashSet(); // 追加する人のオブジェクトを作成する。 Human taro = new Human("太郎", 15); Human hanako = new Human("花子", 12); Human jiro = new Human("次郎", 13); // ハッシュセットにHumanオブジェクトを追加する。 set.add(taro); set.add(hanako); set.add(jiro); set.add(taro); //太郎を2回追加 // ハッシュセットの一覧を表示する。 Iterator i = set.iterator(); while (i.hasNext()) { Human h = (Human) i.next(); System.out.println("(名前)" + h.getName() + " (年齢)" + h.getAge()); } //太郎が1回しか表示されないことを確認する。 } }
package com.techscore.utility.chapter3.exercise1; /** * Human.java * TECHSCORE Javaユーティリティ3章 実習課題1 * * Copyright (c) 2004 Four-Dimensional Data, Inc. */ public class Human { private String name = null; private int age = 0; public Human(String name, int age) { this.name = name; this.age = age; } public String getName() { return (name); } public int getAge() { return (age); } }