01:/* 配列の宣言と初期化 およびソート(TreeSet) J2SE 5.0 */
02:
03:import java.awt.* ;
04:import java.awt.event.* ;
05:import javax.swing.* ;
06:import java.util.TreeSet;
07:import java.util.Iterator;
08:
09:public class Sort4T {
10:
11:	public static void main(String args[]) {
12:
13:	String [] data = { "National Public Safety Commission",
14:	                   "Defense Agency",
15:	                   "Financial Services Agency",
16:	                   "Ministry of Public Management, Home Affairs, " +
17:	                      "Posts and Telecommunications",
18:	                   "Ministry of Justice",
19:	                   "Ministry of Foreign Affairs",
20:	                   "Ministry of Finance",
21:	                   "Ministry of Economy, Trade and Industry",
22:	                   "Ministry of Land, Infrastructure and Transport",
23:	                   "Ministry of Agriculture, Forestry and Fisheries",
24:	                   "Ministry of Environment",
25:	                   "Ministry of Health, Labor and Welfare",
26:	                   "Ministry of Education, Culture, Sports, " +
27:	                      "Science and Technology" };
28:
29:		JFrame frame = new JFrame("配列のソート");
30:		frame.addWindowListener(new WindowAdapter() {
31:			public void windowClosing(WindowEvent e) { System.exit(0); }
32:		});
33:		Container pane = frame.getContentPane();
34:		pane.setLayout(new GridLayout(0, 2, 10, 10));
35:		JPanel leftPanel  = new JPanel(new GridLayout(0, 1, 10, 10));
36:		JPanel rightPanel = new JPanel(new GridLayout(0, 1, 10, 10));
37:		pane.add(leftPanel);
38:		pane.add(rightPanel);
39:
40:		TreeSet<String> cabinet = new TreeSet<String>();
41:		for(int i=0; i<data.length; i++) {
42:			cabinet.add( data[i] );
43:			leftPanel.add( new JLabel( data[i] ) );
44:		}
45:
46:		Iterator<String> it = cabinet.iterator();
47:
48:		while(it.hasNext()) {
49:			rightPanel.add( new JLabel( it.next() ) );
50:		}
51:
52:		frame.pack();
53:		frame.setVisible(true);
54:	}
55:}