scala get ipv4 address

825 ワード

scalaはisInstanceOfでエラーを報告し(instanceofという関数はない)、javaの下でinstanceofを使ってInet 4 Addressかどうかを判断します
 
test("get ipv4 address") {

val ipAddr = InetAddress.getLocalHost.getHostAddress

val interfaces: util.Enumeration[NetworkInterface] = NetworkInterface.getNetworkInterfaces

while(interfaces.hasMoreElements) {
val ele = interfaces.nextElement

val addrs: util.Enumeration[InetAddress] = ele.getInetAddresses

while(addrs.hasMoreElements) {
val addr: InetAddress = addrs.nextElement()

addr match {
case some: Inet4Address if !addr.isLoopbackAddress =>
println(some.getHostAddress)
case _ =>
// do nothing
}

}
}

}