继续学习二维数组
昨天去勤工俭学了,事情很复杂,搞了差不多一天,人也差点感冒了,以后应该就稳定下来了------------
二维数组的初始化
(1)直接初始化
int arr[][]={{1,2},{3,4},{5,6}};
其他类型也一样,
(2)动态初始化
对于引用类型的二维数组,必须首先为最高维分配引用空间,然后再顺次为低维分配空间,而且必须为每个数组元素单独分配空间
今天继续学习二维数组的经典应用--杨辉三角
其主要明白yh[i][j]=yh[i-1][j]+yh[i-1][j-1]
代码如下:
public void yanghui(){ int[][] yh=new int[10][]; for (int i = 0; i < yh.length; i++) {
//给每个一维数组开空间 yh[i]=new int[i+1]; for (int j = 0; j < yh[i].length; j++) { if(j==0 || j==yh[i].length-1){ yh[i][j]=1; }else { yh[i][j]=yh[i-1][j]+yh[i-1][j-1]; } System.out.print(yh[i][j]+" "); } System.out.println(); } }
加一个居中对齐的
int rows = 10; for (int i = 0; i < rows; i++) { int number = 1; // 打印空格字符串 System.out.format("%" + (rows - i) * 2 + "s", ""); for (int j = 0; j <= i; j++) { System.out.format("%4d", number); number = number * (i - j) / (j + 1); } System.out.println(); }
yh[i][j]=yh[i-1][j]+yh[i-1][j-1];
浙公网安备 33010602011771号