通过不规则数组打印出九九乘法表
首先创建一个二维数组
其中一维数组里面的每个元素都为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]));
}
}
}