我想知道是否有可能,如果是的话,将通过Python中的Java网关接收的JavaList转换为python列表。或类似的东西python类型。
在py4j的文档中我只能看到将python类型转换为java但反之亦然。
答案 0 :(得分:0)
接收到的Java列表会在接收它的python函数中自动转换为python列表。
答案 1 :(得分:0)
据我所知,PY4J会自动将它们(ArrayList)转换为python中的列表。
使用包含加法的第一个示例,但不返回一个
int
返回
ArrayList<String>
答案 2 :(得分:0)
如官方文档中advanced topics
section所述,在调用Python代码中,数组,列表,集合,映射,迭代器类型的Java集合会自动转换为兼容格式。
请注意,java列表不会转换为纯Python列表,而是会转换为 @Override
public void onResponse(Call<GetAllJsonDatum> call, Response<GetAllJsonDatum> **response**) {
。
让我们看一个演示此内容的示例:
JAVA代码:
py4j.java_collections.JavaList
Python代码,调用网关:
public class Py4JEntryPoint {
private List<String> javaList = new ArrayList<>();
public Py4JEntryPoint(){
javaList.add("Hello");
javaList.add("How");
javaList.add("you");
javaList.add("doin...!!!");
}
public List<String> getJavaList(){
return javaList;
}
public static void main(String[] args) {
GatewayServer gatewayServer = new GatewayServer(new Py4JEntryPoint());
gatewayServer.start();
System.out.println("Gateway Server Started");
}
}