我正在将其他人的 java 代码转换为 scala(出于好奇,这是这里的示例),并且在以下内容上遇到了编译器错误(稍微简化了):
var out = new Formatter(new StringBuilder(), Locale.US)
out.format("%s-%d ", someObject, someInteger);
这是我收到的错误消息:
[error] (java.util.Locale,java.lang.String,<repeated...>
[java.lang.Object])java.util.Formatter <and>
[error] (java.lang.String,<repeated...>[java.lang.Object])java.util.Formatter
[error] cannot be applied to (java.lang.String, java.lang.Object, Int)
...
[error] one error found
如果我将第二行更改为:
out.format("%s-%d ", someObject, someInteger.asInstanceOf[Object]);
有人可以解释这是为什么吗?
这是否意味着在 java 中可以传递需要对象参数但在 scala 中不行的整数?