首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

关于集合,对象的有关问题

2011-12-24 
关于集合,对象的问题我有两个类,一个是News类,有两个属性Stirng title,String content.还有一个NewsList类

关于集合,对象的问题
我有两个类,一个是News类,有两个属性Stirng title,String content.
  还有一个NewsList类,有一个属性 Set<News> newslist;
  问题是我往set里面加入一条新闻,这条新闻的标题必须是集合中没有的才能加进去,请问算法该怎么实现啊,修改,删除都比较容易,但是如何写增加?求助一下!!

[解决办法]
重写 hashCode()和equals()方法

Java code
package com.xiaoqi;public class News {    String title;    String content;    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 int hashCode() {        final int prime = 31;        int result = 1;        result = prime * result + ((content == null) ? 0 : content.hashCode());        result = prime * result + ((title == null) ? 0 : title.hashCode());        return result;    }    @Override    public boolean equals(Object obj) {        if (this == obj)            return true;        if (obj == null)            return false;        if (getClass() != obj.getClass())            return false;        News other = (News) obj;        if (content == null) {            if (other.content != null)                return false;        } else if (!content.equals(other.content))            return false;        if (title == null) {            if (other.title != null)                return false;        } else if (!title.equals(other.title))            return false;        return true;    }}
[解决办法]
探讨
把NewsList的newslist换成HashSet。HashSet的一个基本的特性就是加入的时候只有不重复才加入,否则根本加入不了的。

热点排行
Bad Request.