看板 java 關於我們 聯絡資訊
我想請問一下 下面是我的程式碼 我遇到的問題是當我執行完這段程式 我所得Result_array[0]到Result_array[102400]裡頭的值是一模一樣 但是這不是我想要的.....看程式邏輯就知道我是想要 Result_array[0]={1,2,3} Result_array[1]={4,5,6}........所以我想問我的程式是哪裡不對. 要怎麼改才會達到我想要結果 public static Set[] Combine_L1_Two_Sets(Vector deled_data)//傳入一個大於 min support 的 data vector(0)是 pattem vector(1)是 times { Set Result_array[]=new HashSet[102400];//儲存兩兩combine set的結果 Set temp=new HashSet();//儲存兩兩combine set的結果 for(int i=0;i<Result_array.length;i++) { Result_array[i]=temp; } int Result_Row=0;//記錄Result 的Row Vector deled_data_vector=(Vector)deled_data.get(0); System.out.println(deled_data_vector.size()); for(int i=0;i<deled_data_vector.size();i++) { for(int j=i+1;j<deled_data_vector.size()-1;j++) { int Result_Col=0; Result_array[Result_Row].add(((Integer)deled_data_vector.get(i)).intValue()); Result_array[Result_Row].add(((Integer)deled_data_vector.get(j)).intValue()); Result_Row++; } } return Result_array; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.52.149
superlubu:你把resultarray裡面全部elements都設=temp,當然就全 10/06 07:37
superlubu:都一樣啊 10/06 07:38
superlubu:而且之後的 code 根本完全不知先你想要幹什麼 XDD 10/06 09:33
asilzheng:Result_array[i] = new HashSet(); 10/06 12:53
coal511464:排版大哥= =..... 10/10 09:46