我想知道当你把它们放在

Java ArrayList中时,是否有可能没有jython automagicaly将java对象转换为python类型.

从jython-console复制的示例:

>>> b = java.lang.Boolean("True");

>>> type(b)

>>> isinstance(b, java.lang.Boolean);

1

到目前为止,一切都很好,但如果我把对象放在ArrayList中

>>> l = java.util.ArrayList();

>>> l.add(b)

1

>>> type(l.get(0))

该对象被转换为类似python的布尔值(即int)和…

>>> isinstance(l.get(0), java.lang.Boolean)

0

这意味着我再也看不到这曾经是java.lang.Boolean.

澄清

我想真正想要实现的是在将对象从Java传递到Python时摆脱从Java类型到Python类型的隐式转换.我将举一个澄清的例子.

一个Python模块:

import java

import IPythonModule

class PythonModule(IPythonModule):

def method(self, data):

print type(data);

以及使用此模块的Java类:

import java.util.ArrayList;

import org.python.core.PyList;

import org.testng.annotations.*;

import static org.testng.AssertJUnit.*;

public class Test1 {

IPythonModule m;

@BeforeClass

public void setUp() {

JythonFactory jf = JythonFactory.getInstance();

m = (IPythonModule) jf.getJythonObject(

"IPythonModule",

"/Users/sg/workspace/JythonTests/src/PythonModule.py");

}

@Test

public void testFirst() {

m.method(new Boolean("true"));

}

}

在这里,我将看到输出’bool’,因为隐式转换,但我真正想要的是看到’javainstance’或’java.lang.Boolean’.如果要运行此代码,还需要可以找到here的JythonFactory类.

java jython_将对象从Java传递到Jython时保留Java类型相关推荐

  1. java里class有什么用_安装JDK时的java和javac命令有什么用?

    相信大家都装过JDK吧,在装JDK时我们会在命令提示符窗口中通过java和javac两个命令来检测我们的环境变量是否配置正确,那么你知道java和javac两个命令有什么用吗? 在了解这两个命令的作用 ...

  2. java urlconn 下载慢_使用HttpURLConnection下载文件时出现 java.io.FileNotFoundException彻底解决办法...

    import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.RandomAc ...

  3. java csv 双引号_Java-使用Scess编写CSV时从字符串类型数据中删除双引号

    我们正在使用带有Spark的Java.当前的需求是编写一个 DataSet 到Spark,空间作为Delimeter.下面是我尝试过的代码: fooDataSetObject.coalesce(1). ...

  4. java中class对象的理解 讲得相当不错 很接地气 引用下

    https://blog.csdn.net/mcryeasy/article/details/52344729 https://blog.csdn.net/dufufd/article/details ...

  5. Java虚拟机专题对象内存定位

    一  对象在内存中的布局 1.1对象的创建过程 对象的创建过程可以如下图所示: 1.2 什么是符号引用和直接引用,为什么需要在常量池定位到符号的引号? 在类的解析阶段,把虚拟机常量池内的符号引号替换为 ...

  6. Java:简述对象转换为字符串的三种方式

    Java:简述对象转换为字符串的三种方式 在Java项目的实际开发和应用中,常常需要用到将对象转为String这一基本功能.本文将对常用的转换方法进行一个总结. 一.(String)强制类型转换 使用 ...

  7. java面试题_阿里大厂流出的数百道 Java 经典面试题

    BAT 常问的 Java基础39道常见面试题 1.八种基本数据类型的大小,以及他们的封装类 2.引用数据类型 3.Switch能否用string做参数 4.equals与==的区别 5.自动装箱,常量 ...

  8. Java学习总结——对象的引用与传递

    拾柒--对象的引用与传递 一.初步了解引用传递 引用传递也称为传地址,指的是在方法调用时,传递的参数是按引用进行传递,其实传递的是引用的地址,也就是变量所对应的内存空间的地址. 方法调用时,若实际参数 ...

  9. java h5 交互 传数组, JS数组/对象的值为什么变了?你需要深入理解对象的值传递...

    复杂的对象数据处理后,可能发现某个对象值变了,有时却不变. 上述问题往往会困扰 JS初学者,甚至老手也不一定能说出所以然. 本文将对此进行一定深层探究 -- 深入理解 JS中的对象的值传递. Why ...

最新文章

  1. MySQL解压缩安装
  2. mysql rrd_关于cactiEZ数据迁移操作思路
  3. shell oracle查询数组,shell 脚本 ---数组
  4. 高频变压器_变压器图案
  5. C语言深度剖析书籍学习记录 第七章 文件结构
  6. Ubuntu 安装 Eclipse C/C++开发环境
  7. 200 300的完数 c语言,C语言求完数(完全数)(详解版)
  8. h5 移动端 监听软键盘弹起、收起
  9. LeetCode算法题-Detect Capital(Java实现)
  10. map在Sql中的传参 模糊查询limit分页
  11. char和char*
  12. Python实现多变量序列堆叠式LSTM模型,并实现未来多时刻预测
  13. Mac下载及安装Tomcat
  14. Mac版Lync无法登陆问题(登录设置)
  15. java转盘抽奖算法_抽奖算法 - 幸运大转盘 - java
  16. uva 10099 The Tourist Guide nyoj 1019 亲戚来了【单个路线最大流【最短路算法】】
  17. 2022年五大人工智能自动化趋势
  18. linux下mtr命令,linux-常用命令-mtr(示例代码)
  19. Windows编译FreeRDP
  20. 摄像机-哈苏-哈苏相机:哈苏相机

热门文章

  1. python安卓下载-QPython - Python for Android
  2. python 菜鸟-python菜鸟教程
  3. 自学python能干些什么副业-用Python赚钱的5个方法,教你业余时间赚外快!
  4. python基础知识-一篇文章搞定Python全部基础知识
  5. 自学python顺序-【经验分享】自学Python的学习顺序!附学习资料
  6. python装饰器详解-Python装饰器基础概念与用法详解
  7. 编程语言python入门-【python】编程语言入门经典100例--19
  8. 关于语音识别技术 你了解多少
  9. 远场语音是什么鬼?和人工智能有什么关系?
  10. 用深度学习进行语音识别为什么还要算mfcc?