import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import org.junit.Test; public class JunitTestDemo { @Test public void testSort() { ArrayList<String> arl = new ArrayList<String>(); arl.add("D"); arl.add("a"); arl.add("E"); arl.add("f"); arl.add("C"); arl.add("東海灣"); arl.add("傲來"); arl.add("東海灣-岩洞"); arl.add("傲來葯店"); arl.add("北京"); arl.add("上海"); arl.add("湖南"); arl.add("河南"); arl.add("河北"); Collections.sort(arl, new Comparator<String>() { @Override public int compare(String o1, String o2) { try { // 取得比較對象的漢字編碼,並將其轉換成字符串 String s1 = new String(o1.toString().getBytes("GB2312"), "ISO-8859-1"); String s2 = new String(o2.toString().getBytes("GB2312"), "ISO-8859-1"); // 運用String類的 compareTo()方法對兩對象進行比較 return s1.compareTo(s2); } catch (Exception e) { e.printStackTrace(); } return 0; } });// 根據元素的自然順序 對指定列表按升序進行排序。 for (int i = 0; i < arl.size(); i++) { System.out.println(arl.get(i)); } } }