您的位置:首页 > 职场人生

黑马程序员_日记48_泛型基本使用

2015-04-16 14:26 176 查看
 ——- android培训java培训、期待与您交流! ———-

2 泛型的基本使用

练习:

比较字符串长度,按字符串长度排序!

分析:

字符串本身是具备比较性的int compareTo(String str);

但是这里要比较的是字符串长度,

所以需要用比较器让集合具备比较性,

使用的是TreeSet的第二种排序方式

现在加入泛型

import java.util.*;
class GenericDemo2
{
public static void main(String[] args)
{
//创建集合,限定类型为String
TreeSet<String> ts = new TreeSet<String>(new StrLenComparator());

//添加String元素
ts.add("decsa");
ts.add("ab");
ts.add("aaad");
ts.add("aaad");
ts.add("aaab");
ts.add("ebc");
ts.add("fbcded");
ts.add("c");

//迭代取出,迭代器也用泛型
for(Iterator<String> it = ts.iterator(); it.hasNext(); )
{
String s = it.next();
System.out.println(s.length()+"----"+s);
}
}
}

//实现比较器,使用泛型
class StrLenComparator implements Comparator<String>
{
//覆盖compare
public int compare(String str1,String str2)
{
//判断字符串长度关系
int num = new Integer(str1.length()).compareTo(new Integer(str2.length()));

//当字符串长度相等,判断字典序
if(num==0)
return str1.compareTo(str2);

//否则不判断字典序
return num;
}
}


字符串长度比较在使用泛型后安全了

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  泛型的基本使用