62,614
社区成员
发帖
与我相关
我的任务
分享
public static <T> T[] getDiff(T[] args){
Set<T> set = new HashSet<T>();
for(T arg : args){
set.add(arg);
}
return (T[]) set.toArray();
}
public static void main(String[] args){
String[] a = {"1", "2", "1","3","1", "2"};
String[] c = getDiff(a);
}
public static <T> T[] getDiff(Class<T> type, T... args) {
Set<T> set = new HashSet<T>(Arrays.asList(args));
@SuppressWarnings("unchecked")
T[] result = (T[])Array.newInstance(type, set.size());
return (T[])set.toArray(result);
}
public static <T> Set<T> getDiff(T... args) {
return new HashSet<T>(Arrays.asList(args));
}
public static void main(String[] args) {
Number[] a = { Integer.valueOf(1), Double.valueOf(2.0) };
Number[] c = getDiff(a);
for(Number s : c)
System.out.println(s);
}
public static <T> T[] getDiff(T... args) {
Set<T> set = new HashSet<T>(Arrays.asList(args));
@SuppressWarnings("unchecked")
T[] result = (T[])Array.newInstance(args[0].getClass(), set.size());
return (T[])set.toArray(result);
}
public static <Object> T[] getDiff(T[] args){
Set<Object> set = new HashSet<T>();
for(Object arg : args){
set.add(arg);
}
return (T[]) set.toArray();
}