(1)封装一个新闻类,包含标题和内容属性,提供get,set方法,重写toString方法
(2)只提供一个带参数的标题,实例化对象时,只初始化标题
(3)将新闻对象添加到ArrayList中,并且进行倒序排序
(4)在遍历过程中,对新闻标题进行处理,超过15字只保留前15位,然后在后边加...
(5)在控制台打印遍历出经过处理的新闻标题
public class B {
@SuppressWarnings({"all"})
public static void main(String[] args){
ArrayList list = new ArrayList();
list.add(new News("都能看见看见了你的擦成本卡就不错参考撒九年级"));
list.add(new News("年底开始农村你那里青梅绿茶可考虑钱拿出来看清楚能力强"));
int size = list.size();
for (int i = size - 1;i >= 0;i--){
News news = (News)list.get(i);
showNews(news.getTitle());
}
}
public static void showNews(String title){
if(title == null){
System.out.println("标题有误");
}
if(title.length() > 15){
System.out.println(title.substring(0,15) + "...");
}else{
System.out.println(title);
}
}
}
class News{
private String title;
private String content;
public News(String title) {
this.title = title;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
@Override
public String toString() {
return "News{" +
"title='" + title + "n";
}
}
(2)试分析HashSet和TreeSet分别如何实现去重的
①HashSet的去重机制:hashCode()+ equals(),底层先通过存入对象,进行运算得到一个hash值,通过hash值得到对应的索引,如果发现table索引所在的位置没有数据,就直接存放,如果有数据,就进行equals比较,如果比较后不相同就加入,相同就不加入
②TreeSet去重机制:如果你传入了一个Comparator匿名对象,就使用实现的campare去重,若果方法返回0,救人位是相同的元素或数据,则不添加。如果没有传入,则使用默认比较方式



