除掉数组中重复元素的简单方法

来源:互联网 发布:文明5 mac mod 编辑:程序博客网 时间:2024/05/02 02:42

个人这种方法是一种很不错的方法

/**
 * 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();
 }
}

原创粉丝点击