集合元素去重
1、集合元素去重
1 package com.nv.test; 2 3 import java.util.HashSet; 4 import java.util.Vector; 5 6 /** 7 * 集合元素去重 8 * 9 * @author jixh 10 * 11 */ 12 public class CollectionUnique { 13 14 public static void main(String[] args) { 15 // 第一种,把不重复的取出来放到新的集合 16 Vector<String> ve = new Vector<>(); 17 Vector<String> v = new Vector<>(); 18 for (String str : ve) { 19 if (!v.contains(str)) { 20 v.add(str); 21 } 22 } 23 24 //第二种,使用HashSet 25 @SuppressWarnings("unused") 26 HashSet<String> set = new HashSet<String>(ve); 27 } 28 29 }
2、脑经急转弯---下面程序的输出结果是多少?
1 package com.nv.test; 2 3 import java.util.Date; 4 /** 5 * super.getClass().getName()测试 6 * @author jixh 7 * 8 */ 9 public class TestGetClass extends Date { 10 11 private static final long serialVersionUID = 1L; 12 13 public static void main(String[] args) { 14 new TestGetClass().test(); 15 } 16 17 /** 18 * 由于getClass()在Object类中定义成了final,子类不能覆盖该方法, 19 * 所以,在test方法中调用getClass().getName()方法,其实就是在调用从父类继承的getClass()方法 20 * 也就是说super.getClass()和getClass()的指向是同一个方法,没有设涉及为的多态。 21 * 嗯,这里因为是通过new TestGetClass()对象调的,所以打印TestGetClass 22 * 要得到父类应该是调getClass().getSuperClass().getName(); 23 */ 24 public void test() { 25 System.out.println(super.getClass().getName());//子类的---共用的 26 System.out.println(getClass().getSuperclass().getName());//父类的 27 } 28 }
答案:
com.nv.test.TestGetClass
java.util.Date