Jruby中的Java数组 [英] Java Array in Jruby

查看:79
本文介绍了Jruby中的Java数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个Java库,正在从中提取一些数据.

I have a Java lib that I am pulling some data out of.

它放出3D阵列.但是我对此无能为力.

It out puts a 3D array. However I can not do anything with it.

[[D[]@5615a6e0

是我得到的答复.我尝试映射它:

is the response I get. I have tried mapping it:

{ |arr| arr.map { |arr| arr.to_a } }

但是我什么都没得到,解析该java数组供ruby使用的最佳方法是什么?

but i get nothing out, What is the best way to parse this java array for ruby use?

推荐答案

应该没有问题.只需使用to_a

Should not be a problem. Just use to_a

Java代码:

package com.test.sof;

public class MyTest {
    public static int[] ReturnTestArray() {
        int[] anArray = new int[3];
        anArray[0] = 1;
        anArray[1] = 2;
        anArray[2] = 3;
        return anArray;
    }
}

JRuby代码:

require 'java'
java_import com.test.sof.MyTest

java_array = MyTest.ReturnTestArray
p java_array
#=> int[1, 2, 3]@484c6b

ruby_array = Array.new
p ruby_array
#=> []
ruby_array = java_array.to_a

p ruby_array.size
#=> 3
p ruby_array.join(', ')
#=> "1, 2, 3"

这篇关于Jruby中的Java数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆