在jlabel上使用嵌套循环

时间:2018-12-12 00:32:27

标签: java arrays user-interface

我试图找到笛卡尔乘积并将结果打印在jlabel中,但它仅显示数组的最后一个元素。

int list1 [] = { 1, 2, 3 };
int list2[] = { 1, 2, 3 }; 
        int n1=list1.length; 
int n2=list2.length;
findCart(list1, list2, n1, n2);






void findCart(int arr1[],int arr2[],  
                                    int n, int n1) 
    {       
        for (int i = 0; i < n; i++) 
          for (int j = 0; j < n1; j++) 
            jLabel1.setText("{"+ arr1[i]+", "
                             + arr2[j]+"}, "); 
    }

1 个答案:

答案 0 :(得分:0)

在设置文本之前,您应先将这些值连接起来:

void findCart(int arr1[],int arr2[], int n, int n1) 
{       
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < n; i++) {
      for (int j = 0; j < n1; j++) 
        sb.append("{" + arr1[i] + ", " + arr2[j]+"}, "); 
    }
    jLabel1.setText(sb.toString());
}