如何将PyObject转换为java boolean类型

时间:2012-02-22 00:54:38

标签: java python casting boolean jython

我想将org.python.core.PyObject强制转换为java.lang.Boolean。 类似于:

boolean i = ((Boolean) PyObject).booleanValue(); 

2 个答案:

答案 0 :(得分:2)

试试以下内容:

PyObject obj = interpreter.eval("True");
boolean i = ((PyInteger) obj).asInt() != 0;

答案 1 :(得分:0)

您应该使用Python标准对象接口非零方法:

PyObject obj = interpreter.eval("True");
boolean i = obj.__nonzero__();

(它被称为"非零"因为它在Python有布尔类型之前存在而且Guido的方式有时是神秘的)