Étant donné que j'ai une valeur entière de, par exemple, 10
.
Comment puis-je créer un tableau de 10 éléments comme [1,2,3,4,5,6,7,8,9,10]
?
Étant donné que j'ai une valeur entière de, par exemple, 10
.
Comment puis-je créer un tableau de 10 éléments comme [1,2,3,4,5,6,7,8,9,10]
?
C'est génial, parce que je n'avais pas réalisé avant que : [*0..0] #=> [0] Mais, [*1..0] #=> []
@MichaelKohl - merci - que signifie le point d'interrogation ? avant les lettres ci-dessus ?
A propos des commentaires avec des méthodes astucieuses :
require 'benchmark'
Benchmark.bm { |x|
x.report('[*..] ') do
[*1000000 .. 9999999]
end
x.report('(..).to_a') do
(1000000 .. 9999999).to_a
end
x.report('Array(..)') do
Array(1000000 .. 9999999)
end
x.report('Array.new(n, &:next)') do
Array.new(8999999, &:next)
end
}
Soyez prudent, cette méthode astucieuse Array.new(n, &:next)
est plus lente alors que trois autres méthodes basiques sont identiques.
utilisateur système total réel
[*..] 0.734000 0.110000 0.844000 ( 0.843753)
(..).to_a 0.703000 0.062000 0.765000 ( 0.843752)
Array(..) 0.750000 0.016000 0.766000 ( 0.859374)
Array.new(n, &:next) 1.250000 0.000000 1.250000 ( 1.250002)
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
2 votes
Possible duplicate de La bonne manière de remplir un tableau avec une plage en Ruby