Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 数组转换为文本视图_Android_Arrays_Textview - Fatal编程技术网

Android 数组转换为文本视图

Android 数组转换为文本视图,android,arrays,textview,Android,Arrays,Textview,我有一些二维数组 int a[i][j] 我想展示一下。 我正在努力: String aa = ""; aa+=(a[i][j] + "\n"); table.append(aa); 但它不起作用-只有一个0。 我怎样才能做到这一点 int a[][] = new int[][] { { 0, 1, 2, 3, 4, 3, 1, 1, 7, 9 }, { 4, 5, 6, 4, 8, 6, 1, 3, 6,

我有一些二维数组

int a[i][j]
我想展示一下。 我正在努力:

            String aa = ""; 
            aa+=(a[i][j] + "\n");
            table.append(aa);
但它不起作用-只有一个0。 我怎样才能做到这一点

int a[][] = new int[][] {
   { 0, 1, 2, 3, 4, 3, 1, 1, 7, 9 },
   { 4, 5, 6, 4, 8, 6, 1, 3, 6, 7 },
   { 7, 1, 5, 7, 8, 9, 6, 3, 5, 8 },
   { 8, 2, 3, 9, 8, 7, 6, 6, 4, 9 },
   { 9, 8, 5, 1, 2, 3, 4, 5, 3, 7 }
  };
String aa = ""; 

    for(int i=0; i<5; i++)
    {
         for(int j=0; j<10; j++)
         {
         aa.concat(String.valueOf(a[i][j]));
         }
    }

    (your text view) .setText(aa);
tableText是字符串:

"[1, 0, 0]
[0, 1, 0]
[0, 0, 1]"
所以,假设您有名为table的TextView,您所要做的就是将此字符串设置为TextView的文本:


显然,您需要循环:您现在从[i][j]只获得数组的一个元素

差不多

String aa;
for (int i = 0; i < a.length; i++) {
    for (int j = 0; j < a[i].length; j++) {
        aa += a[i][j];
    }
}
table.setText(aa);

如果需要,请在某处添加换行符\n如果要制作表格,请执行以下操作:

int a[][] = new int[][]{{0,1,2,3,4},
                        {2,3,4,5,6},
                        {2,3,4,5,6}};

StringBuilder strBuild = new StringBuilder();
for(int i = 0; i < a[0].length; i++){
    for(int j = 0; j < a.length; j++){
        strBuild.append(a[i][j]);
        strBuild.append(" ");
    }
    strBuild.append("\n");
}

yourTextVeiw.setText(strBuild.toString());
如果您试图将所有数字放在一行中:

int a[][] = new int[][]{{0,1,2,3,4},
                        {2,3,4,5,6},
                        {2,3,4,5,6}};

StringBuilder strBuild = new StringBuilder();
for(int i = 0; i < a[0].length; i++){
    for(int j = 0; j < a.length; j++){
        strBuild.append(a[i][j]);
        strBuild.append(" ");
    }
}

yourTextView.setText(strBuild.toString());
如果您试图将它们全部放在一列中:

int a[][] = new int[][]{{0,1,2,3,4},
                        {2,3,4,5,6},
                        {2,3,4,5,6}};

StringBuilder strBuild = new StringBuilder();
for(int i = 0; i < a[0].length; i++){
    for(int j = 0; j < a.length; j++){
        strBuild.append(a[i][j]);
        strBuild.append("\n");
    }
}
yourTextView.setText(strBuild.toString());
还有一排都砸在一起了:

int a[][] = new int[][]{{0,1,2,3,4},
                        {2,3,4,5,6},
                        {2,3,4,5,6}};

StringBuilder strBuild = new StringBuilder();
for(int i = 0; i < a[0].length; i++){
    for(int j = 0; j < a.length; j++){
        strBuild.append(a[i][j]);
    }
}
yourTextView.setText(strBuild.toString());

它是完整的代码吗?有环吗?什么是表格?@SergeyGlotov TextView表格;没有循环。@SergeyGlotov数组由0和1填充。@TeWu的版本实际上更好:我只是想展示基本知识。Java中二维数组的元素长度不必相等。j循环上界的硬编码可能是错误的。我在文本视图中有我的数组,但是有数百个数字,我应该以不同的方式声明数组吗?int[]a=新int[100][100];我无法编码int[][]数组=新int[][{{1,0,0},{0,1,0},{0,0,1};,因为这是真值表,我在代码中创建了它。@AlexanderVasilchuk您可以用任何方式创建数组。这只是一个例子。@SergeyGlotov我明白了,我的表现在显示所有数组,用0填充未使用的单元格。我怎么能只显示我使用的单元格?@SergeyGlotov我有16*16,但使用8*8:
int a[][] = new int[][]{{0,1,2,3,4},
                        {2,3,4,5,6},
                        {2,3,4,5,6}};

StringBuilder strBuild = new StringBuilder();
for(int i = 0; i < a[0].length; i++){
    for(int j = 0; j < a.length; j++){
        strBuild.append(a[i][j]);
        strBuild.append("\n");
    }
}
yourTextView.setText(strBuild.toString());
int a[][] = new int[][]{{0,1,2,3,4},
                        {2,3,4,5,6},
                        {2,3,4,5,6}};

StringBuilder strBuild = new StringBuilder();
for(int i = 0; i < a[0].length; i++){
    for(int j = 0; j < a.length; j++){
        strBuild.append(a[i][j]);
    }
}
yourTextView.setText(strBuild.toString());