public class CopyArrayAndRemoveDuplicate {
/**
* 取出冗余数据
*
* @param nums
* 原数组
*/
private String[] removeDuplicate(String[] str) throws Exception {
String[] tmpArray = new String[str.length];
int count = 0;
loop:
for (int i = 0; i < str.length; i++) {
String tmp = str[i];
for (int j = 0; j < count; j++) {
if (tmp.equals(tmpArray[j]))
continue loop;
}
tmpArray[count++] = tmp;
}
return copyArray(tmpArray, 0, count);
}
/**
* 拷贝数组
*
* @param srcArray
* 要拷贝的数组
* @param startIndex
* 拷贝起始索引
* @param endIndex
* 拷贝结束索引
* @return 结果数组
*/
private String[] copyArray(String[] srcArray, int startIndex, int endIndex)throws Exception {
if (endIndex <= startIndex)
throw new Exception("Argumens wrong!");
String[] desArray = new String[endIndex - startIndex];
System.arraycopy(srcArray, startIndex, desArray, 0, desArray.length);
return desArray;
}
public static void main(String[] args) {
String[] a = {"878**","878**","\\878**","8989"};
String[] finalArray;
try {
finalArray = new MyTest().removeDuplicate2(a);
System.out.println(Arrays.toString(finalArray));
} catch (Exception e) {
e.printStackTrace();
}
}
}