问题:创建一个二维数组,将古诗《春晓》的内容赋值于二维数组,然后分别用横版和竖版两种方式输出。
前两天上java课的时候老师,给我们出了这道题。要求:要用java语言来写。
根据要求创建的二维数组
我的思路就是,创建char(字符串)类型的的二位数组,横版输出:写for循环直接遍历列a【行】
竖版输出:利用二维数组的下标来进行对元素的控制。如:a【行】【列】,可写双for循环来进行对元素的行列控制。
竖版输出逗句号在循环里写有些麻烦,我的就直接在循环外添加(循环完成后再添加)
废话不多说代码如下:
package xaingmu;
public class a {
public static void main(String[] args) {
// TODO Auto-generated method stub
char arr[][]= new char[4][];
arr[0]=new char[]{'春','眠','不','觉','晓'};
arr[1]=new char[] {'处','处','闻','啼','鸟'};
arr[2]=new char[] {'夜','来','风','雨','声'};
arr[3]=new char[] {'花','落','知','多','少'};
for(int i=0;i<arr.length;i++) { //横向输出
System.out.print(arr[i]); //按行输出
if(i%2==0) { //判断取模2是否为0
System.out.println(','); //取模等于0加逗号(,)
}
else { //否则添加句号
System.out.println('。');
}
System.out.println("--------"); //输出完一行,就添加一行
}
for(int i=0;i<arr[0].length;i++) { //遍历列
for(int a=0;a<arr.length;a++) { //遍历行
//System.out.print(i);
System.out.print(arr[a][i]); //a为行 i为列
System.out.print("|"); //每输出一次,加|号
//System.out.println();
//if(a==3) {
//System.out.println();
//}
}
System.out.println(); //换行
}
System.out.println(",|。|,|。|"); //末尾添加逗号句号
}
}
运行结果如下:
缺点:如果数组改动的话,整个代码都要做调整,灵活性较低。
本人java刚学到二维数组,代码写的不好,大佬勿喷。有更好的思路的也可以在下方留言,我们一起讨论,一起学习。
阿~苏:生命不息,学习不止