018 オブジェクト指向の深化(ジェネリクスとワイルドカード) 017 問題

問題

1. Pair というジェネリクスクラスを作成してください。このクラスは2つの要素を保持します。

2. Pair クラスに getMax というメソッドを実装して、2つの要素のうちで大きい方を返すようにしてください。

3. Pair クラスを使用して、整数型、ダブル型、文字列型のペアを作成し、それぞれの最大値を取得してみてください。

ヒント

  1. Pair ジェネリクスクラス:
    • ジェネリクスクラスとして Pair を宣言します。
    • 2つの要素を保持するためのメンバ変数を定義します。
  2. getMax メソッド:
    • getMax メソッドを実装します。
    • Comparable インターフェースを実装する型であることをジェネリクスの型パラメータで制約します。
    • compareTo メソッドを使用して2つの要素を比較し、大きい方を返します。
  3. Pair クラスの使用:
    • 整数型、ダブル型、文字列型のペアを作成します。
    • getMax メソッドを使用してそれぞれの最大値を取得します。

このヒントをもとに、ジェネリクスクラス Pair を宣言し、2つの要素を比較する getMax メソッドを実装してください。それから、このクラスを使用して異なる型のペアを作成し、最大値を取得してみてください。

解答例