为了账号安全,请及时绑定邮箱和手机立即绑定

如何将字符数组转换为集合

如何将字符数组转换为集合

慕码人8056858 2023-09-20 16:26:05
如何将字符列表添加到集合中?下面的代码似乎不起作用。HashSet<Character> vowels = new HashSet<Character>(         new Character[] {'a', 'e', 'i', 'o', 'u', 'y'}     );我看到的错误是构造函数 HashSet(Character[]) 未定义我尝试了Character[]和char[],但都不起作用。
查看完整描述

3 回答

?
慕妹3242003

TA贡献1824条经验 获得超6个赞

首先将Character数组转换为List,然后使用HashSet<>()构造函数转换为Set

List<Character> chars = Arrays.asList(new Character[] {'a', 'e', 'i', 'o', 'u', 'y'});
Set<Character> charSet = new HashSet<>(chars);
System.out.println(charSet);

或者你可以直接使用Arrays.asList

Set<Character> charSet = new HashSet<>(Arrays.asList('a','e','i','o','u','y'));

从jdk-9开始,有一些Set.of方法可用于创建不可变对象

Set<Character> chSet = Set.of('a','e','i','o','u','y');

您还可以使用以下命令创建不可修改的 SetCollections

Set<Character> set2 = Collections.unmodifiableSet(new HashSet<Character>(Arrays.asList(new Character[] {'a','e','i','o','u'})));

通过使用Arrays.stream

Character[] ch = new Character[] {'a', 'e', 'i', 'o', 'u', 'y'};
Set<Character> set = Arrays.stream(ch).collect(Collectors.toSet());


查看完整回答
反对 回复 2023-09-20
?
LEATH

TA贡献1936条经验 获得超6个赞

由于Set是Java中Collection包的一部分。因此,可以借助 Collections.addAll() 方法将 Array 转换为 Set。


 // Crate an Empty Set

 Set<T> set = new HashSet<>(); 

  

  // Add the Character array to set 

  Collections.addAll(set, Arrays.toCharacter( new Character[] {'a', 'e', 'i', 'o', 'u', 'y'}));



查看完整回答
反对 回复 2023-09-20
?
哔哔one

TA贡献1854条经验 获得超8个赞

Set<Character> vowels = new HashSet<Character>(Arrays.asList(new Character[] {'a', 'e', 'i', 'o', 'u', 'y'}));



查看完整回答
反对 回复 2023-09-20
  • 3 回答
  • 0 关注
  • 64 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信