2017-02-05 8 views
1

Я пытаюсь разобрать выход REXP. Я преобразовал результат в объект java. Однако я не могу получить значение внутри объекта. Объект м содержит:Как получить значения из объекта Java (объект REXP)?

[1, 1, 3, 1, 3, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3] 
[9.12324245] 
[1212,1234,4343] 
[3.456] 

Мне нужно, чтобы получить эти значения в массив для дальнейшей обработки

Любая помощь здесь будет действительно здорово? Фрагмент кода приведен ниже:

REXP kmv = connection.eval(kmeans); 
HashMap<String, Object> j = (HashMap<String, Object>) kmv.asNativeJavaObject(); 
Set<Entry<String, Object>> set = j.entrySet(); 
Iterator<Entry<String, Object>> i = set.iterator(); 
while(i.hasNext()) { 
    Map.Entry<String, Object> me = (Map.Entry<String, Object>)i.next(); 
    String key = (String) me.getValue(); 
    Object m = (Object)me.getKey();    
} 

ответ

0

Ответ был прост

   // Back to the basics of decoding an object :) 
      if (m.getClass().isArray()) { 
       if (m instanceof double[]) { 
        value = Arrays.toString((double[])m); 
       } else if (m instanceof int[]) { 
        value = Arrays.toString((int[])m); 
       } 
      }