📅  最后修改于: 2023-12-03 15:31:56.012000             🧑  作者: Mango
TreeSet
是 Java 中的集合类型,它继承了 AbstractSet
类,实现了 NavigableSet
接口,是一个有序、无重复元素的集合。
TreeSet
中包含了许多有用的方法,其中之一就是 toArray()
方法,该方法可以将集合转换为数组。下面是一个使用 toArray()
方法的示例代码:
import java.util.TreeSet;
public class TreeSetExample {
public static void main(String[] args) {
// 创建一个 TreeSet 对象,该集合中包含整数元素
TreeSet<Integer> treeSet = new TreeSet<Integer>();
// 添加元素
treeSet.add(2);
treeSet.add(4);
treeSet.add(8);
treeSet.add(1);
treeSet.add(3);
// 使用 toArray() 方法将集合转换为数组
Object[] array = treeSet.toArray();
// 打印数组元素
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
}
}
在该示例代码中,首先创建了一个 TreeSet
对象,然后添加了一些整数元素。接着使用 toArray()
方法将集合转换为数组,最后打印输出数组元素。
该示例代码的运行结果如下:
1
2
3
4
8
可以看到,转换后的数组元素是有序的,并且没有重复元素。
需要注意的是,toArray()
方法返回的是一个 Object[]
类型数组,而不是具体类型的数组。如果需要转换成具体类型的数组,可以使用 Java 中的类型转换语法,如下所示:
// 创建一个 String 类型的数组
String[] stringArray = new String[treeSet.size()];
// 使用 toArray() 方法将集合转换为对象数组
Object[] objectArray = treeSet.toArray();
// 将对象数组转换成字符串数组
for (int i = 0; i < objectArray.length; i++) {
stringArray[i] = (String) objectArray[i];
}
// 打印字符串数组元素
for (int i = 0; i < stringArray.length; i++) {
System.out.println(stringArray[i]);
}
在该示例代码中,首先创建了一个 String
类型的数组 stringArray
。接着使用 toArray()
方法将集合转换为对象数组,然后将对象数组转换成字符串数组,并打印输出结果。
需要注意的是,在将对象数组转换成字符串数组时,需要使用类型转换语法将对象转换成字符串类型。如果对象类型与目标类型不匹配,则会抛出 ClassCastException
异常。