现在的位置: 首页 > 综合 > 正文

java ArrayList合并相同元素

2018年01月28日 ⁄ 综合 ⁄ 共 562字 ⁄ 字号 评论关闭

public static void main(String[] args) {
		List list = new ArrayList();
		list.add("a");
		list.add("b");
		list.add("c");
		list.add("c");
		list.add("b");
		list.add("b");
		
		System.out.println("合并前:" + list);
		list = joinList(list);
		System.out.println("合并后:" + list);
	}

	/**
	 * 将List中相同的元素合并(即只保留相同元素中的一个)
	 * @param list 需要被合并的List
	 * @return 合并后的List
	 */
	private static List joinList(List list){
		List list2 = new ArrayList();
		
		for(int i=0; i<list.size();i++){
			Object obj = list.get(i);
			//如果当前元素不在list2中,则添加
			if(list2.indexOf(obj) == -1){
				list2.add(0,obj);
			}
		}
		
		//上面的结果元素顺序会与之前的相反,如果需要翻转顺序,加上下面的代码
		//Collections.reverse(list2);//倒序list
		
		return list2;
	}

抱歉!评论已关闭.