某银行举行某活动后,需要统计出所有获奖客户,便于颁发纪念奖品,由于营业网点众多,数据比较分散,一个客户可能在不同的网点中奖多次,请根据各个网点的中奖客户编号信息,统计出所有的中奖客户编号:
网点a:1、2、7、9、11、15、34、35
网点b:2、3、4、8、12、35
网点c:5、9、15、16、20、41
提示:使用数组存储各个网点数据,统计出目标数组共有多少个元素(注意重复元素只算作一个),再把不重复的数据存入目标数组。
刚学数组用什么方法可以把多余的元素干掉?
网点a:1、2、7、9、11、15、34、35
网点b:2、3、4、8、12、35
网点c:5、9、15、16、20、41
提示:使用数组存储各个网点数据,统计出目标数组共有多少个元素(注意重复元素只算作一个),再把不重复的数据存入目标数组。
刚学数组用什么方法可以把多余的元素干掉?
set可以去重
import java.util.Set;public class CsdnRequest { private Set<Integer> winners = new HashSet<Integer>(); public void add(int[] customers) {
for (int i = 0; i < customers.length; i++) {
winners.add(customers[i]);
}
} //返回你要的目标数组
public Object[] getResult() {
return winners.toArray();
} public String toString() {
String str = "";
Object[] winnerList = getResult();
for (int i = 0; i < winnerList.length; i++) {
str += winnerList[i] + " ";
}
return str;
} public static void main(String[] args) {
CsdnRequest obj = new CsdnRequest();
int[] natA = { 1, 2, 7, 9, 11, 15, 34, 35 };
int[] natB = { 2, 3, 4, 8, 12, 35 };
int[] netC = { 5, 9, 15, 16, 20, 41 };
obj.add(natA);
obj.add(natB);
obj.add(netC);
System.out.println(obj);
}
}
import java.util.List;
import java.util.TreeSet;
public class MySet{
private TreeSet<Integer> s;
public MySet()
{
s = new TreeSet<Integer>();
}
public void addList(List<Integer> l)
{
s.addAll(l);
}
public void addArray(int[] arr)
{
for (int i : arr) {
this.s.add(new Integer(i));
}
}
public void print()
{
System.out.println(s);
}
public static void main(String[] args) {
int[] a = {1,2,7,9,11,15,34,35};
int[] b = {2,3,4,8,12,35};
int[] c = {5,9,15,16,20,41};
MySet set = new MySet();
set.addArray(a);
set.addArray(b);
set.addArray(c);
set.print();
}
}