当前位置: 首页 > 面试题库 >

将java.util.Map [String,Object]转换为scala.collection.immutable.Map [String,Any]

巫墨一
2023-03-14
问题内容

如何将java.util.Map [String,Object]转换为scala.collection.immutable.Map
[String,Any],以便将原始映射中的所有值(整数,布尔值等)都转换为正确的值,以在Scala中运作良好。


问题答案:

正如VonC所说,scala.collections.JavaConversion仅支持可变集合,但您不必使用单独的库。派生可变集合,从TraversableOnce该集合定义了一个toMap返回不可变Map的方法:

import scala.collection.JavaConversions._

val m = new java.util.HashMap[String, Object]()
m.put("Foo", java.lang.Boolean.TRUE)
m.put("Bar", java.lang.Integer.valueOf(1))

val m2: Map[String, Any] = m.toMap
println(m2)

这将输出

Map(Foo -> true, Bar -> 1)


 类似资料:
  • 问题内容: 我发现有很多人试图这样做,并对此进行了询问,但始终会使用scala代码来回答问题。我需要调用一个需要scala.collection.immutable.Map的API,但是我有一个java.util.Map,如何在我的Java代码中将后者从后者转换为前者?编译器不同意这种说法是一种隐式转换,因为当我尝试它时会否定它! 谢谢! 问题答案: 获取不可变的Scala映射有些棘手,因为col

  • 问题内容: 我正在开发一些应用程序,它允许从SD卡中选择图像,将其保存到数据库中并为ImageView设置此值。我需要知道将uri转换为字符串并将字符串转换为uri的方法。现在,我使用了Uri的getEncodedPath()方法,但是例如,此代码不起作用: 因此,我不知道如何将Uri保存到数据库中并根据保存的值创建新的Uri。请帮我修复它。 问题答案: 我需要知道将uri转换为字符串并将字符串转

  • 问题内容: 如何从float转换为string或从string转换为float? 在我的情况下,我需要在2个值字符串(我从表中获得的值)和我计算出的浮点值之间进行断言。 我尝试从浮动到字符串: 但是断言失败 问题答案: 使用Java的类。 为了进行比较,将字符串转换为float并比较两个float总是更好。这是因为对于一个浮点数,存在多个字符串表示形式,与字符串相比,它们是不同的(例如“ 25”!

  • 我试图使用以下公式将Future[Seq[(String,String)]转换为Future[Seq[(String)]: 所以 sortedSeq 是 Future[Seq[(String, String)]] 但我一直得到错误: 我做错了什么?

  • 问题内容: 我只想编写这样的代码: 我以为可以代表任何类型,所以也可以代表任何类型,现在我知道我错了,是一个整体类型,不能视为。 因此,有人可以帮助我如何使此代码正常工作,或其他解决方案吗? PS :我知道或可以相互转换,但是实际上这并不是我的意图,可能还有另一种类型,而不是and 。 问题答案: 现在我知道我错了,是一个整体类型,不能视为。 是的,那是因为它是它自己的类型(而不是其他任何类型的“

  • 问题内容: 我将日期以这种格式存储在SQLite数据库中: 当我以这种格式检索日期时,除小时外,其他一切都很好。时间总是如此。这是我的输出: 这是代码: 我究竟做错了什么? 问题答案: 我认为您的日期格式没有意义。没有13:00 PM。删除格式末尾的“ aaa”,或将HH转换为hh。 不过,这对我来说很好: 它将打印“ 2010年4月29日星期四CEST”。