Grundsätzlich habe ich ein Array wie folgt aus:Wie kann ich den Typ eines Arrays erzwingen, wenn es in Scala initialisiert wird?
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
);
Und wenn scala es sieht, will es, dies zu tun:
base_length: Array[Int] = Array(...)
Aber ich würde es vorziehen, für sie, dies zu tun:
base_length: Array[Byte] = Array(...)
ich habe versucht:
val base_length = Array[Byte](...)
Aber scala sagt:
<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)
Dies scheint mir im Grunde genommen zu sein, mir zu sagen, dass der Array-Konstruktor will die Art der Anordnung, um herauszufinden, was von den Argumenten ist. Normalerweise ist das großartig, aber in diesem Fall habe ich gute Gründe dafür, dass die Array-Elemente Byte
s sind.
Ich habe nach Hinweisen gesucht, aber ich kann nichts finden. Jede Hilfe wäre großartig!
Beachten Sie, dass Bytes unterzeichnet werden, so dass ihr gültiger Bereich von -128 bis 127 ist – starblue