import java.util.ArrayList; import java.util.List; public class GenericsSample3 { public final static String[] suits = {"S", "C", "H", "D"}; public static void main(String[] args) { List> deck = new ArrayList>(); for (int i = 0; i < suits.length; i++) { List row = new ArrayList(); for (int j = 1; j <= 13; j++) { if (j == 1) { row.add(suits[i] + "A"); // 型チェックが行われる } else { row.add(suits[i] + j); // ここも型チェックが行われる } } deck.add(row); // もちろん、ここでも型チェックが行われる } for (int i = 0; i < suits.length; i++) { for (int j = 0; j < 13; j++) { System.out.print(deck.get(i).get(j) + " "); // 簡単 } System.out.println(); } } }