首先,需要了解到为什么有数组?什么是数组?
为什么有数组
为了存储同种数据类型的多个值。
例如从1-100这些int型数据,如果对其进行存储,输出等操作时,没有数组,一个一个定义的话,会非常麻烦,所以,引入数组可以极大地节省时间。
什么是数组
数组是存储同一种数据类型多个元素的集合,也可以看成是一个容器。同时,数组既可以存储基本数据类型,又可以存储引用数据类型。
数组定义格式
数据格式[ ] 数组名=new 数据类型[数组长度]
但是:数据格式 数组名[]=new 数据类型[数组长度]的格式也正确,
创建一个int型的一维数组
package com.hpu.edu.dong;
public class dong {
public static void main(String[] args) {
// TODO Auto-generated method stub
int test[]=new int[3];//创建数组
test[0]=1;
test[1]=2;
test[2]=3;
for(int i=0;i<test.length;i++){
System.out.println(test[i]);//打印数组中的每一个元素
}
}
}
什么是数组的初始化
为数组开辟连续的内存空间,并为每个数组元素赋值。
如何对数组进行初始化
数组的初始化分为动态初始化和静态初始化两种。
动态初始化:只指定长度,由系统给出初始化值。
int[] test=new int[6];
静态初始化:给出初始化值,由系统决定长度。
二维数组
二维数组:数组的数组----二维数组的每一个元素是一个一维数组。
二维数组格式
数据类型[ ][ ] 数组名=new 数据类型[m][n]。
数据类型[ ] 数组名[ ]=new 数据类型[m][n]。
数据类型 数组名[ ][ ]=new 数据类型[m][n]。
遍历二维数组二维数组
package com.hpu.edu.dong;
public class dong {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[][] test={{1,2,3},{4,5,6,7},{7,8,9}};
for (int i = 0; i < test.length; i++) {
for(int j=0;j<test[i].length;j++){
System.out.print(test[i][j]+" ");
}
System.out.println();
}
}
}
输出结果为:
1 2 3
4 5 6 7
7 8 9
输入行数并输出相应的杨辉三角
首先:什么是杨辉三角?简单的说,就是结果的两端始终为1,每个数字等于上方的数字和左上方数字之和,并且行数等于列数。
package com.hpu.edu.dong;
import java.util.Scanner;
public class dong {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner s=new Scanner(System.in);//键盘输入整数
System.out.print("输入一个正整数:");
int row=s.nextInt();
int[][] arr=new int[row][]; //定义二维数组,
for (int i = 0; i < row; i++) { //遍历
arr[i]=new int[i+1]; //初始化每一行的一维数组
for (int j = 0; j <= i; j++) {
if(j==0||j==i){ //每一行的开头和结尾都置为1
arr[i][j]=1;
}else{
arr[i][j]=arr[i-1][j]+arr[i-1][j-1];//每个数等于正上方和左上方数字之和。
}
System.out.print(arr[i][j]+" ");
}
System.out.println();
}
}
}
运行结果:
输入一个正整数:6
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1