hashset能检查字符数组吗
时间: 2024-05-01 14:18:36 浏览: 26
HashSet可以检查字符数组,但是需要将字符数组转换为字符串后再进行添加和检查。例如:
```java
char[] arr = {'a', 'b', 'c'};
String str = new String(arr);
HashSet<String> set = new HashSet<>();
set.add(str);
System.out.println(set.contains(str)); // true
```
注意:HashSet中的元素需要重写hashCode和equals方法才能正确比较。如果直接将字符数组添加到HashSet中,会以Object类的hashCode和equals方法进行比较,可能会出现错误的结果。
相关问题
HashSet 打印成字符串数组显示
你可以使用 HashSet 的 toArray() 方法将其转换为一个 Object 类型的数组,然后再将其转换为一个字符串类型的数组。这里是一个示例代码:
```java
import java.util.HashSet;
public class HashSetToStringArray {
public static void main(String[] args) {
HashSet<String> set = new HashSet<String>();
set.add("apple");
set.add("banana");
set.add("orange");
Object[] objArray = set.toArray();
String[] strArray = new String[objArray.length];
for (int i = 0; i < objArray.length; i++) {
strArray[i] = objArray[i].toString();
}
for (String str : strArray) {
System.out.println(str);
}
}
}
```
输出结果为:
```
apple
banana
orange
```
java hashset转string数组
可以使用Java中的toArray()方法将HashSet转换为String数组,示例如下:
```java
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("orange");
set.add("banana");
String[] arr = set.toArray(new String[set.size()]);
```
在上述示例中,我们首先创建了一个包含三个字符串的HashSet。然后,我们使用toArray()方法将其转换为String数组。请注意,我们将数组的大小指定为HashSet的大小。最终,我们得到了一个包含三个元素的String数组。