java基础之数组
1、数组的定义
-
数组是相同类型数据的有序集合
-
数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成
-
每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问
2、数组的声明和创建
必须先声明数组变量,初始化后才能使用
数组声明的格式: 1、数据类型[] 数组名 ;//声明
数组名=new 数组类型【数组个数】 //初始化
2、、数据类型[] 数组名 =new 数组类型【数组个数】
3、数组的声明和创建
public class text03{
public static void main(String[] args){
//数组的声明
int[] arr;
//数组的创建
arr=new int[]{1,2,3,4,5,6,9};
//遍历数组元素并输出
for (int i=0;i<arr.length ;i++ ) {
System.out.println(arr[i]);
}
}
}
结果:
public class text04{
public static void main(String[] args){
//数组的声明和创建
int[] arr=new int[]{1,2,3,4,5,6,9};;
//遍历数组元素并输出
for (int i=0;i<arr.length ;i++ ) {
System.out.println(arr[i]);
}
}
}
结果同上
4、数组的初始化
1 、Java内存:堆、栈、方法区
2、数组的默认初始化:数组是引用类型,他的元素相当于类的实例变量,因此,数组一经分 配空间,数组的元素也被按照实例变量同样的方式被隐式初始化
3、静态初始化:创建+赋值
int[] a={1,2,5,4,5};
4、动态初始化:数组的动态初始化,初始化后数组的每一个元素的保存内容为其对 应数据类型的默认值。包含默认初始化
int[] b=new int[10];
b[0]=10;
5、数组的特点
- 长度是确定的,一旦被创建,大小就是不可改变的
- 元素必须是相同类型,不允许出现混合类型
- 数组中的元素可以是任何数据类型,包括基本类型和引用类型
- 数组的长度:数组名.length。
- 必须有提供实例化对象才可以使用数组的下标变量
6、数组的使用
-
foreach循环:通过变量i输出数组元素
public class text04{ public static void main(String[] args){ //数组的声明和初始化 int[] arr=new int[]{1,2,3,4,5,6,9};; //遍历数组元素并输出 for (int i: arr) { System.out.println(i); } } }
-
数组元素的方法使用:
1、 这是一个printArray方法,用来打印数组元素,这是一个伪代码。
public static void printArray(int[] arr){ //int[] arra是实参 for (int i=0;i<arr.length ;i++ ) { System.out.println(arr[i]); } }
2、这是一个反转数组,有返回值
```
public static int[] rever(int[] arr){
//int[] arra是实参
int[] result=new int[arr.length];
for (int i=0j<result.length ;i<arr.length;i++ ) {
result[i]=arr[j];} return result;
}
```7、二维数组
-
二维数组就是数组的嵌套使用
-
声明创建格式;
int[][] a={{1,2},{5,4},5};
8、Arrays类
-
数组的工具类java.util.Arrays
-
功能:
1、给数组赋值:通过fill方法,
package com.yyr.arraytext; import java.util.Arrays; public class arrayText03 { public static void main(String[] args) { int[] arr={1,5,6,8,89,5,2}; Arrays.fill(arr,0);//fill方法把值都赋值为0 System.out.println(Arrays.toString(arr));//输出arr的元素 } }
2、给数组排序:通过sort方法
package com.yyr.arraytext; import java.util.Arrays; public class arrayText03 { public static void main(String[] args) { int[] arr={1,5,6,8,89,5,2}; Arrays.sort(arr);//只是对arr进行排序 System.out.println(Arrays.toString(arr));//输出arr的元素 } } 结果:
3、比较数组:通过equals方法比较数组中元素值是否相等
-
-
4、查找数组元素:通过binarySearch方法对排序好的数组进行二分查找操作
5、toString()方法:输出数组元素
package com.yyr.arraytext;
import java.util.Arrays;
public class arrayText02 {
public static void main(String[] args) {
int[] arr={1,2,5,8,9,7,2};//静态初始化
System.out.println(arr);
System.out.println(Arrays.toString(arr));
}
}
结果: