import java.util.Collections;
import java.util.List;
import java.text.DateFormatSymbols;
import java.util.LinkedList; public class SearchCollections { public static void main(String[] args) {
List list = new LinkedList(); /**
* DateFormatSymbols 是一个公共类,用于封装可本地化的日期-时间格式化数据,
* 如月名、星期几的名称和时区数据。DateFormat 和 SimpleDateFormat
* 都使用 DateFormatSymbols 封装此信息。 Sysmbols:符号,标记
* 通过从默认语言环境资源加载格式数据,构造一个 DateFormatSymbols 对象。
*/
DateFormatSymbols dfs = new DateFormatSymbols(); String[] months = dfs.getMonths();//拿到月份
for(int i = ; i < months.length; i++){
String month = months[i];
list.add(month);
} Collections.sort(list);//这里如果不排序,顺序是对的,sort后出出现下面的结果!
System.out.println("月份的名字:" + list);
/**
* 月份的名字:[, 一月, 七月, 三月, 九月, 二月, 五月, 八月, 六月, 十一月, 十二月, 十月, 四月]
* 发现它的位置在:10
* 月份 = 十二月
*/ int index = Collections.binarySearch(list, "十二月");//用二分法查找list里面'十二月'
if(index>){
System.out.println("发现它的位置在:"+index); String month = (String)list.get(index);//list.get()方法:返回列表中指定位置的元素。
System.out.println("月份 = "+month);
} } }
05-11 15:12