本文主要是介绍Java基础——数组,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
数组——一组连续的内存空间,用于存储相同类型的元素
一维数组
特点:类型相同,长度固定
创建:
1.先声明,后创建空间
int[] 数组名;
a = new int[3]:
2.声明+创建
int[] 数组名 = new int[3];
3.创建空间同时进行赋值
int[] 数组名 = new int[]{1,3,5};
4.创建空间的同时进行赋值
int[] 数组名 = {1,3,5}
数组遍历
public class ArrayTest1 {
public static void main(String[] args) {
//数组是引用类型:需要先开辟空间,然后再存值
int[] arr = new int[3];
//通过下标给数组元素赋值(存值)与取值 下标范围:0~长度-1
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
//arr[3] = 4; //ArrayIndexOutOfBoundsException: 数组越界异常
System.out.println("数组长度:"+arr.length);
for(int i=0;i<arr.length;i++) {
System.out.println(arr[i]);
//数组中每个项都加1
arr[i] += 1
System.out.println(arr[i]);
}
}
}
二维数组
创建
1.先声明再创建空间
int[][] a;
a = new int[2][3];
2.声明的同时创建空间 (常用)
int[][] b = new int[2][3];
3.创建空间的同时给定行长度
int[][] c = new int[2][];
c[0]=new int[]{3,5,8};
c[1]=new int[]{1,5,7};
4.创建空间的同时进行赋值
int[][] d = {{1,2,5},{4,6,8}}; //二行三列的二维数组
注意:第三种和第四种可以指定不规则的列(了解),循环遍历是一样的
例如:下面静态赋值的操作:
int[][] e = {{1,2,5},{4,6}};
for(int i=0;i<e.length;i++) {
for(int j=0;j<e[i].length;j++) {
System.out.print(e[i][j]+"\t");
}
System.out.println(); //回车
}
}
}
数组遍历
public class Test2 {
public static void main(String[] args) {
int[][] a = new int[2][3];
a[0][0] = 4;
a[0][1] = 2;
a[0][2] = 6;
a[1][0] = 8;
//循环遍历
for(int i=0;i<a.length;i++) { //a.length:行长度
for(int j=0;j<a[i].length;j++) { //每行的列的个数
System.out.print(a[i][j]+"\t");
}
System.out.println(); //回车
}
}
}
杨辉三角
public class Test1 {
public static void main(String[] args) {
System.out.print("请输入杨辉三角的行:");
Scanner sc = new Scanner(System.in);
int row = sc.nextInt();
int[][] a = new int[row][row];
for(int i=0;i<row;i++) {
for(int j=0;j<=i;j++) {
if(j==0||j==i) { //第一列或行和列相等,则为1
a[i][j]=1;
}else{ //当前位置值=上一行位置+上一行前一个位置
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
System.out.print(a[i][j]+"\t");
}
System.out.println(); //换行
}
}
}
这篇关于Java基础——数组的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!