个人这种方法是一种很不错的方法
/**
* myarray
* org.jack_lei.array DeleteOverlapArrayElement.java
* Mar 21, 2010 2:32:26 PM
* @Email yxl9015@gmail.com
* @author jack_lei
*/
package org.jack_lei.array;
import java.io.Serializable;
import java.util.HashSet;
import java.util.Set;
/**
* @author jack_lei
* 用Set集合删除掉数组中重复的元素
*/
public class DeleteOverlapArrayElement implements Serializable {
private static final long serialVersionUID = -5181322393438538127L;
/**
* 让Set集合除掉重复的元素,返回一个新的数组
* @param str 数组
* @return 返回一个没有重复元素的新数组
*/
public String [] getStringArray(String str[]) {
// 定制一个Set集合,因为Set集合中不允许存放重复的元素
Set<String> setStr = new HashSet<String>();
// 遍历出数组中的元素放进Set集合中
for(int i = 0; i < str.length; i++) {
setStr.add(str[i]);
}
// 定义一个新的数组
String str2[] = new String[setStr.size()];
// 遍历集合,把数据返回新的数组中
int i = 0;
for(String str3 : setStr) {
str2[i] = str3;
i++;
}
return str2;
}
public void testStringArray() {
String str[] = new String[]{"bb","aa","cc","bb","aa","cc","bb","aa","cc"};
String str2[] = this.getStringArray(str);
for(int i = 0; i < str2.length; i++) {
System.out.println(str2[i]);
}
}
public static void main(String [] args) {
DeleteOverlapArrayElement doae = new DeleteOverlapArrayElement();
doae.testStringArray();
}
}