我有一个字符串数组
public function index(){
$urlpath = new Helpsql;
$urlpath->cd();
return response()->download($destinationPath);
}
我需要将其转换为HashSet
val array = arrayOf("a", "b", "c")
答案 0 :(得分:1)
按如下所述使用扩展功能toHashSet
array.toHashSet()
该功能属于Kotlin库
/**
* Returns a [HashSet] of all elements.
*/
public fun <T> Array<out T>.toHashSet(): HashSet<T> {
return toCollection(HashSet<T>(mapCapacity(size)))
}
答案 1 :(得分:0)
将数组转换为设置
import java.util.*
fun main(args: Array<String>) {
val array = arrayOf("a", "b", "c")
val set = HashSet(Arrays.asList(*array))
println("Set: $set")
}
运行程序时,输出为:
Set: [a, b, c]
答案 2 :(得分:0)
直接使用toSet(*array)
或toHashSet(*array)
。这些是Kotlin标准库的一部分。
星号*
是spread
运算符。它分别应用集合中的所有元素,每个元素依次传递给vararg
方法参数。
val array = arrayOf("data", "foo")
// Multiple spreads ["data", "foo", "bar", "data", "foo"]
val mySet = setOf(*array, "bar", *array)
不传递参数setOf()
会导致一个空集。
这些都是您可以使用的所有特定哈希类型:
setOf()
hashSetOf()
linkedSetOf()
mutableSetOf()
sortableSetOf()
这是显式定义收集项类型的方法。
setOf<String>()
hashSetOf<MyClass>()