HashSet hashset=new HashSet(); 二、HashSet添加元素 /" />

小言_互联网的博客

java集合——HashSet的用法

473人阅读  评论(0)

java集合——HashSet的用法

 

一、HashSet的构造

 

<span style="font-size:18px;">HashSet hashset=new HashSet();</span>

 

二、HashSet添加元素

 


  
  1. <span style= "font-size:18px;"> //向hashset中添加一个字符串
  2. hashset.add( "abc");
  3. //向hashset中添加一个整数
  4. hashset.add( 1);
  5. //向hashset中添加一个字符
  6. hashset.add( 'a');
  7. //向hashset中添加一个数组
  8. int[] abc={ 10, 11, 12};
  9. hashset.add(abc);
  10. //向hashset中添加一个自定义对象
  11. Cat cat1= new Cat( "asd", 2);
  12. hashset.add(cat1); //向hashset中添加一个对象</span>

三、遍历HashSet

 

 


  
  1. <span style= "font-size:18px;"> //遍历HashSet
  2. Iterator it = hashset.iterator();
  3. while(it.hasNext())
  4. {
  5. Object obj = it.next();
  6. if(obj instanceof Integer)
  7. {
  8. System.out.println( "Integer:"+obj);
  9. }
  10. if(obj instanceof String)
  11. {
  12. System.out.println( "String:"+obj);
  13. }
  14. if(obj instanceof Character)
  15. {
  16. System.out.println( "Character:"+obj);
  17. }
  18. if(obj instanceof int[])
  19. {
  20. System.out.print( "int[]:");
  21. for( int i= 0;i<abc.length;i++)
  22. {
  23. System.out.print(abc[i]+ " ");
  24. }
  25. }
  26. }</span>

输出结果:

 



四、HashSet的一些常用方法:

 

添加元素:

hashset.add(E e):返回boolean型,如果此 set 中尚未包含指定元素,则添加指定元素;如果此 set 已包含该元素,则该调用不更改 set 并返回 false。

删除元素:

hashset.clear():从此 set 中移除所有元素。

hashset.remove(Object o):如果指定元素存在于此 set 中,则将其移除。

hashset.isEmpty():如果此 set 不包含任何元素,则返回 true。

hashset.contains(Object o):如果此 set 包含指定元素,则返回 true。

hashset.size():返回此 set 中的元素的数量(set 的容量)。

 

HashSet的一个应用实例,笔试题:

对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符。
给定一个字符串(不一定全为字母)A及它的长度n。请返回第一个重复出现的字符。保证字符串中有重复字符,字符串的长度小于等于500。
测试样例:
"qywyer23tdd",11
返回:y

代码:

 


  
  1. import java.util.*;
  2. public class FirstRepeat {
  3. public static char findFirstRepeat(String A, int n) {
  4. char[] a=A.toCharArray();
  5. HashSet hs= new HashSet<>();
  6. for( int i= 0; i<n;i++)
  7. {
  8. if (!hs.add(a[i]))
  9. {
  10. return a[i];
  11. }
  12. }
  13. return 0;
  14. }
  15. public static void main(String[] args)
  16. {
  17. System.out.println(findFirstRepeat( "qywyer23tdd", 11));
  18. }
  19. }

返回结果:y

 


转载:https://blog.csdn.net/tingzhiyi/article/details/52152487
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场