以下是我目前正在做的事情:
a = trues(100)
for i in 1:length(a)
a[i] = rand()>0.5 ? true : false
end
是否有更好(更快)的解决方案?
答案 0 :(得分:9)
在Julia 0.4中,你可以写bitrand(100)
:
julia> bitrand(100)
100-element BitArray{1}:
true
true
false
false
true
⋮
true
false
true
true
true
您可以使用旧版Julia中的Compat
包来获取此内容,也可以使用旧名称randbool
(相同的行为,不同的名称)。 Simon对rand(Bool,100)
的回答是有效的,但是它给出了Array{Bool}
而不是BitArray
- 一种特殊的数据类型,它只使用每个布尔值一点来紧凑地存储布尔数组。
答案 1 :(得分:2)