HashSet<String>迭代输出算法
时间: 2023-05-19 07:05:44 浏览: 51
可以使用Java中的迭代器来遍历HashSet<String>中的元素,具体代码如下:
HashSet<String> set = new HashSet<String>();
// 添加元素
set.add("apple");
set.add("banana");
set.add("orange");
// 迭代输出
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
输出结果为:
apple
banana
orange
相关问题
C# 将HashSet<string>转为String[]
要将一个 `HashSet<string>` 转换为 `string[]`,可以使用 `ToArray()` 方法。下面是一个示例代码:
```csharp
HashSet<string> hashSet = new HashSet<string>();
hashSet.Add("apple");
hashSet.Add("banana");
hashSet.Add("orange");
string[] array = hashSet.ToArray();
```
在上面的例子中,我们首先创建了一个 `HashSet<string>` 对象,并向其中添加了几个字符串元素。然后,使用 `ToArray()` 方法将 `HashSet<string>` 转换为 `string[]` 数组。现在,`array` 数组将包含 `{"apple", "banana", "orange"}` 这些元素。
注意:转换后的数组中的元素顺序可能与原始 HashSet 中的顺序不同,因为 HashSet 不保持元素的顺序。
Map<String,Map<Integer,HashSet<String>>>
这是一个Java中的数据结构,它包含了三个层级:第一层级是一个字符串类型的键,第二层级是一个整数类型的键,第三层级是一个字符串类型的HashSet。可以理解为一个嵌套的字典结构,其中第一层级的字符串是主键,第二层级的整数是次键,第三层级的HashSet则是值的集合。可以通过以下方式访问和操作这个数据结构的元素:
1.获取第一层级的所有键:
```
Set<String> keys1 = map.keySet();
```
2.获取第二层级的所有键:
```
Map<Integer, HashSet<String>> map2 = map.get(key1); // key1为第一层级的某个键
Set<Integer> keys2 = map2.keySet();
```
3.获取第三层级的所有值:
```
HashSet<String> set = map2.get(key2); // key2为第二层级的某个键
```
4.添加元素:
```
if(map.containsKey(key1)){
Map<Integer, HashSet<String>> map2 = map.get(key1);
if(map2.containsKey(key2)){
HashSet<String> set = map2.get(key2);
set.add(value);
}else{
HashSet<String> set = new HashSet<>();
set.add(value);
map2.put(key2, set);
}
}else{
HashSet<String> set = new HashSet<>();
set.add(value);
Map<Integer, HashSet<String>> map2 = new HashMap<>();
map2.put(key2, set);
map.put(key1, map2);
}
```
其中,key1、key2和value均为具体的键和值。