1.数组
相同类型数据的有序集合;
2.数组声明创建
public class Demo01 {
public static void main(String[] args) {
int[] nums;//声明一个数组
nums=new int[10];//创建一个数组
//int[] nums =new int[10];
//赋值
for (int i = 0; i < nums.length; i++) {
nums[i]=i+1;
System.out.print(nums[i]+" ");
}
}
}
public class Demo02 {
public static void main(String[] args) {
//静态初始化:创建+赋值
int[] i ={1,2,3,4,5};
//动态初始化:默认为0
int[] i2=new int[10];
}
}
Java内存
-
堆
存放new的对象和数组
-
栈
存放基本变量类型
引用对象的变量
-
方法区
3.数组使用
public class Demo03 {
public static void main(String[] args) {
int[] array={1,2,3,4,5};
int a=sum(array);
int b = max(array);
int[]revarr=reverse(array);
}
//求和
static int sum(int[] array){
int sum=0;
for (int i = 0; i <array.length ; i++) {
sum+=array[i];
}
return sum;
}
//求最大值
static int max(int[] array){
int arraymax=array[0];
for (int i = 0; i <array.length ; i++) {
if(array[i]>arraymax)
arraymax=array[i];
}
return arraymax;
}
//反转数组
static int[] reverse(int [] array){
int[] result=new int[array.length];
//反转的操作
for (int i = 0, j=result.length-1; i < array.length; i++,j--) {
result[j]=array[i];
}
return result;
}
}
4.多维数组
public class Demo04 {
public static void main(String[] args) {
int[][] arrays=new int[10][3];
for (int i = 0; i < arrays.length; i++) {
for (int j = 0; j < arrays[i].length; j++) {
arrays[i][j]=i+j;
System.out.print(arrays[i][j]+"\t");
}
System.out.println();
}
}
}
5.Arrays类
sort方法:排序
fill方法:赋值
tostring方法:打印
6.稀疏数组
7.冒泡排序
public class Demo06 {
public static void main(String[] args) {
int[]nums={12,45,23,5,56,655,89,963,1,45,};
int[] sortnums=sort(nums);
System.out.println(Arrays.toString(sortnums));
}
public static int[] sort(int[] array) {
for (int i = 0; i < array.length -1; i++) {
for (int j = 0; j < array.length-i-1 ; j++) {
if (array[j]>array[j+1])
{
int a=array[j];
array[j]=array[j+1];
array[j+1]=a;
}
}
}
return array;
}