如何在Scala中声明字节数组?

在Scala中,我可以这样声明一个字节数组

val ipaddr: Array[Byte] = Array(192.toByte, 168.toByte, 1.toByte, 9.toByte)

这太冗长了。有没有更简单的方法来声明Byte数组,类似于Java的

byte[] ipaddr = {192, 168, 1, 1};

请注意,由于.String 中的,以下结果导致错误

InetAddress.getByAddress("192.168.1.1".toByte)

回答:

我相信您能做的最短的是

val ipaddr = Array[Byte](192.toByte, 168.toByte, 1, 9)

您 将192和转换168为字节,因为它们不是有效的字节文字,因为它们超出了有符号字节的范围([-128,127])。

请注意,Java也是如此,以下给出了编译错误:

byte[] ipaddr = {192, 168, 1, 1};

您必须将192和168强制转换为字节:

byte[] ipaddr = {(byte)192, (byte)168, 1, 1};

以上是 如何在Scala中声明字节数组? 的全部内容, 来源链接: utcz.com/qa/430147.html

回到顶部