Groovy'de bazı veri odaklı testler yaparken garip bir şeyle karşılaştım. Eğer önemliyse, bu bir Spock testinin içinde.Bu Groovy yapısı nedir ve sözdizimi nasıl çalışır?
def list = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
println list[0]
üretir: Burada
listeleri çalışması gereken bu yol, bence[1, 2, 3]
yanlışlıkla böyle bir şey yaptı:
def whut = [[1, 2, 3]
[4, 5, 6]
[7, 8, 9]]
println whut[0]
println whut
hangi çıkışlar:
[null, null, null]
[[null, null, null]]
Tamam, Groovy'nin virgül olmadan deklarasyonu sevmediğini görebiliyorum - ama derler, bu nedir? Aşağıdaki
def inputz = [
[1, 0.631226308, 0.631226308, 0.631226308, 1, 0, 0.240426243]
[1, 0.312284518, 0.312284518, 0.312284518, 1, 1, 1 ]
[3, 0.823506476, 0.31230335, 0.631237191, 1, 1, 0 ]
[4, 0.934875788, 0.486395986, 0.66732053, 3, 2, 0.927654169]
[4, 0.699869773, 0.234328294, 0.424739329, 3, 3, 1 ]
]
println inputz[0]
println inputz
verir: - Ben yaratıyorum Groovy yapı nedir ve neden
[0.631226308, 1, 1, 1, 1, 1, 1]
[[0.631226308, 1, 1, 1, 1, 1, 1]]
Tamamen burada kayboldum İşte
gerçekten bu sözdizimi hakkında bana atar ne Bu görünüşte rastgele değerleri listelerimden mi çıkarıyor?Teşekkürler, ve benim soru için daha açıklayıcı bir isim düşünüyorsanız, bunu değiştireceğim.
Bu harika soruyu #groovypuzzlers'ın ikinci sezonunda bir puzzler olarak kullandık ve size bir teşekkür t-shirt'ü göndermek istiyoruz. Sana nasıl ulaşabilirim? – JBaruch