2015-11-09 1 views
0

У меня есть список баллов по сравнению сходства, и я хочу сделать Array Многомерный, как этот array[][] после того, как я получу Array, это будет сумма столбцов и строк. Но я не знаю, чтобы объявить это.Как объявить массив из нескольких значений в java?

Вот мой код:

List<List<Sentence>> collect = Arrays.asList(new File(p).listFiles()).stream() 
      .map((x) -> configSentenceByLine(x.getAbsolutePath())) 
      .map((x) -> tokenizingWord(x)) 
      .map((x) -> stemmingWord(x)) 
      .map((x) -> countWordBased(x)) 
      .collect(Collectors.toList()); 

    double sim = 0.0; 
    for (int k = 0; k < collect.size(); k++) { 
     for (int i = 0; i < collect.get(k).size(); i++) { 
      for (int m = k + 1; m < collect.size(); m++) { 
       for (int j = 0; j < collect.get(m).size(); j++) { 
        SimilarityMeasure ss = new SimilarityMeasure(); 
        sim = ss.getSimilarity(collect.get(k).get(i).getSentence(), collect.get(m).get(j).getSentence()); 
       } 
      } 
     } 
    } 

Если 2 документов я могу заявить это, и я могу получить столбец суммы и строку.

Ниже кода, который объявляет 2 документа.

double[][] simMat = new double[collect.get(0).size()][collect.get(1).size()];   
    for (int k = 0; k < collect.get(0).size(); k++) { 
     for (int i = 0; i < collect.get(1).size(); i++) { 
      simMat[k][i] = (double) (nc.getSimilarity(collect.get(0).get(k).getSentence(), collect.get(1).get(i).getSentence()));     
     } 
    } 

Но если документы имеют 5 или более, я не знаю, чтобы объявить об этом.

+0

и почему вы не можете это сделать? – Stultuske

+0

Я не знал, чтобы объявить 'массив', если значение списка имеет 5 или более. –

+2

точно так же, как если бы у них было три элемента – Stultuske

ответ

0

Возможно, вы можете разделить на отдельные массивы и создать массив массивов, а затем манипулировать оттуда. Пример, приведенный ниже, просто вырезает и вставляет и сохраняет в виде html-файла и запускается в браузере. Надеюсь, поможет.

<!DOCTYPE html> 
<html> 
<body> 
<p id="demo"></p> 

<script> 
///// array of arrays ///// 
///// create array [a] with three elements ///// 
var a=[1,2,3]; 

///// create array [b] with three elements ///// 
var b=[4,5,6]; 

///// create array c with two elements [array a and array b]  ///// 
var c=[a,b]; 

///// create variable d ///// 
var d; 

///// put element 0 of array c into variable d ///// 
///// as element 0 of array c is array a ///// 
///// array a is passed into variable d a=[1,2,3] ///// 
d=c[0] 

///// proof print out 2nd element of variable d ///// 
///// prints out 2 which is 2nd element of array a ///// 
///// which was stored as first element of array c ///// 
document.getElementById("demo").innerHTML = d[1]; 
</script> 


</body> 
</html> 
Смежные вопросы