我试图使用JOptionPane在messagedialog中输入一个2维数组。 我试过,但我不知道该怎么做。这就是我到目前为止所做的。
我的计划开始的地方:
package p4;
import javax.swing.JOptionPane;
import arrays.Integer2dArrays;
public class Exercise4b {
public void testArray(int[][] array) {
String message = "";
message += "toString: " + Integer2dArrays.toString( array ) + "\n";
// message += "elements: " + Integer2dArrays.elements( array ) + "\n";
// message += "max: " + Integer2dArrays.max( array ) + "\n";
// message += "min: " + Integer2dArrays.min( array ) + "\n";
// message += "sum: " + Integer2dArrays.sum( array ) + "\n";
// message += "average: " + String.format( "%1.2f", Integer2dArrays.average( array ) ) + "\n";
JOptionPane.showMessageDialog( null, message );
}
public static void main(String[] args) {
Exercise4b e4b = new Exercise4b();
int[][] test1 = {{1,2,3,4},{-5,-6,-7,-18},{10,9,8,7}};
int[][] test2 = {{1,2,3,4,5,6},{-7,-8,-9},{2,5,8,11,8},{6,4}};
e4b.testArray(test1);
e4b.testArray(test2);
}
}
我倾向于创建一个将数组转换为字符串的方法。
package arrays;
public class Integer2dArrays {
public static String toString(int[][] array){
}
}
答案 0 :(得分:2)
要以简单的方式显示二维数组,您可以使用此方法:
public class Integer2dArrays {
public static String toString(int[][] array){
StringBuilder sb = new StringBuilder();
for(int i=0;i<array.length;i++) {
for(int j=0;j<array[i].length;j++) {
sb.append(array[i][j]).append(", ");
}
sb.append("\n");
}
return sb.toString();
}
}
这将按以下方式产生输出:
int[][] test1 = {{1,2,3,4},{-5,-6,-7,-18},{10,9,8,7}};
将是:
1, 2, 3, 4,
-5, -6, -7, -18,
10, 9, 8, 7,
如果您想要不同形式的输出,请指定您期望的格式。