从JRuby调用Java时,nil是否被强制为null?

时间:2014-02-13 17:31:09

标签: jruby

https://github.com/jruby/jruby/wiki/CallingJavaFromJRuby表示Java null对象被强制转换为Ruby的nil,但没有提到强制是否发生在另一个方向(例如,当参数传递给Java方法)。可以?如果没有,你怎么能从JRuby创建null

我注意到nil.to_java返回nil

2 个答案:

答案 0 :(得分:1)

澄清一下,您的问题的答案是

要亲自看看,只需尝试将nil传递给任何Java方法,看看会发生什么,这很容易做到:

> java.lang.System.out.println(nil)
null
 => nil

或者

> java.lang.String.new(nil)
Java::JavaLang::NullPointerException:

答案 1 :(得分:0)

尝试

  JavaUtil.primitive_to_java(nil)