如何将列表从typesafeconfig列表展开到特定类型的列表?

时间:2015-05-07 10:49:30

标签: json scala

我有一个json格式的配置,我正在使用Typesafe Config库来加载它。

以json格式输入配置

 {
  "input": {
   "Date": "2014-01-01",
   "Ids": ["1","2","3","4"]
    }
 }

代码

  import com.typesafe.config.{Config, ConfigFactory}
  val config = ConfigFactory.load("test.json")
  val ids = config.getList("input.Ids").unwrapped
  #  ids: java.util.List[Object] = [1, 2, 3, 4]

我得到的只是对象列表。当我尝试将每个元素的映射都设置为int时,它会失败,因为每个元素都是一个对象。

   ids.map(_.toInt)
    <console>:14: error: value toInt is not a member of Object
          ids.map(_.toInt)

如何在scala中将对象列表转换为整数列表?

1 个答案:

答案 0 :(得分:1)

您可以使用getStringList方法,然后将结果映射到int

config.getStringList(&#34; input.Ids&#34)。图(_ toInt)

或在这种情况下直接使用getIntList方法