基本上,我有一個這樣的數組:如何在Scala中初始化時強制使用數組的類型?
val base_length = Array(
0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48, 56,
64, 80, 96, 112, 128, 160, 192, 224, 0
);
當斯卡拉看到它,它要做到這一點:
base_length: Array[Int] = Array(...)
但我寧願它這樣做:
base_length: Array[Byte] = Array(...)
我想:
val base_length = Array[Byte](...)
但是斯卡拉說:
<console>:4: error: type arguments [Byte] do not conform to method apply's type
parameter bounds [A <: AnyRef]
val base_length = Array[Byte](1,2,3,4,5)
這在我看來,主要是告訴我,數組構造要弄清楚數組的類型與參數。通常這很棒,但在這種情況下,我有充分的理由希望數組元素爲Byte
s。
我環顧四周尋找指導,但我似乎無法找到任何東西。任何幫助將是偉大的!
注意字節簽署,所以他們的有效範圍爲-128到127 – starblue 2009-08-27 20:56:22