通过不规则数组打印出九九乘法表
首先创建一个二维数组
其中一维数组里面的每个元素都为null
String[][] Nine_Nine = new String[9][];//生成一维数组,每个数组中的元素都为null for (int i = 1; i <= 9; i++){ Nine_Nine[i-1] = new String[i];//遍历Nine_Nine中的每一个元素,并定义每个元素为i长度的数组
接下来进行元素的填充
首先创建一个StringBuilder 对象 "Formula"
使用了String.Value0f()方法将 int类型的i转换为 String 类型 然后进行字符串的链接
要注意String Builder 和String 类型不一样 Java语言对于数据类型的要求强烈
这边使用 String Builder 类中的一个 String Builder.toString()方法将String Builder
转换为String 类型可以将元素赋值到Nine_Nine这个不规则列表中
StringBuilder Formula = new StringBuilder(); int Sum = 0; for (int i = 1;i <=9;i ++ ){ for(int j = 1;j <=i ;j ++){ Formula.append(String.valueOf(i)+"x"+String.valueOf(j)); Sum = i * j;//九九乘法表结果 Formula.append("=" +Sum) ; Nine_Nine[i-1][j-1] = Formula.toString();//将数组元素赋值 Formula.delete(0,Formula.toString().length());//清空Formula内容 } }
接下来是对Nine_Nine 数组进行输出
简单的System.out.Println(Array.to String)
只会输出Nine_Nine在内存中的位置
需要用for 循环进行遍历
for(int i = 0 ; i <= 8 ;i ++){ System.out.println(Arrays.toString(Nine_Nine[i])); }
来进行输出,此时输出正常
最后附上全套代码
package Asuka_Java_code; import java.util.Arrays; import java.util.jar.JarEntry; public class MDA { public static void main(String[] args) { StringBuilder Formula = new StringBuilder(); int Sum = 0; String[][] Nine_Nine = new String[9][];//生成一维数组,每个数组中的元素都为null for (int i = 1; i <= 9; i++){ Nine_Nine[i-1] = new String[i];//遍历Nine_Nine中的每一个元素,并定义每个元素为i长度的数组 } System.out.println(Arrays.deepToString(Nine_Nine));//进行调试 for (int i = 1;i <=9;i ++ ){ for(int j = 1;j <=i ;j ++){ Formula.append(String.valueOf(i)+"x"+String.valueOf(j)); Sum = i * j;//九九乘法表结果 Formula.append("=" +Sum) ; Nine_Nine[i-1][j-1] = Formula.toString();//将数组元素赋值 Formula.delete(0,Formula.toString().length());//清空Formula内容 } } for(int i = 0 ; i <= 8 ;i ++){ System.out.println(Arrays.toString(Nine_Nine[i])); } } }