[英]How to create an Array from Iterable in Scala 2.7.7?
我正在使用Scala 2.7.7
我在訪問文檔時遇到困難,因此代碼段會很棒。
上下文
我解析一個長度為4或16個字節的IP地址。 我需要一個字節數組,才能傳遞到java.net.InetAddress。 String.split(separator).map(_。toByte)的結果返回給我Iterable的實例。
我看到兩種解決問題的方法
當前的實現發布在我有關內存泄漏的其他問題中 。
在Scala 2.7中, Iterable
具有一個名為copyToArray
的方法。
我強烈建議您不要在這里使用數組,除非您必須使用特定的庫/框架,然后才需要一個數組。
通常,使用本機Scala類型會更好:
String.split(separator).map(_.toByte).toList
//or
String.split(separator).map(_.toByte).toSeq
更新
假設您的原始字符串是主機名的分隔列表,為什么不只是:
val namesStr = "www.sun.com;www.stackoverflow.com;www.scala-tools.com"
val separator = ";"
val addresses = namesStr.split(separator).map(InetAddress.getByName)
這將為您提供InetAddress
實例的迭代。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.