线性结构
线性结构的主要内容有:数组、栈、队列、单链表、循环链表、双链表、递归、排序算法。
(1)数组的基本使用:
1.1新建数组:
package array;
public class TestArray {
public static void main(String[] args) {
//新建一个数组,并获取数组长度
int []arr1=new int[3];
int length1=arr1.length;
System.out.println("数组长度:"+length1);
//访问数组中的元素:数组名【下标】,下标范围0-length-1。
int element0=arr1[0];
System.out.println("element0:"+element0);
//为数组中的元素赋值
arr1[0]=99;
System.out.println("element0:"+arr1[0]);
arr1[1]=98;
arr1[2]=97;
//遍历数组
for (int i=0;i<length1;i++){
System.out.println("arr"+"["+i+"]的值为:"+arr1[i]);
}
//创建数组的同时,为数组中的元素赋值
int[]arr2=new int[]{90,80,70,60,50};
System.out.println("arr2的长度为:"+arr2.length);
}
}
运行结果如下:
1.2数组中添加元素:
package array;
import java.util.Arrays;
public class TestArray1 {
public static void main(String[] args) {
//解决数组的长度不可变的问题
int[] arr=new int[]{9,8,7};
//快速查看数组中的元素
System.out.println("原数组中的元素为:"+ Arrays.toString(arr));
//要加入数组的目标元素
int dst=6;
//创建一个新的数组,长度是原数组长度加1
int[] newarr=new int[arr.length+1];
//把原数组中的数据全部复制到新数组中
for(int i=0;i<arr.length;i++){
newarr[i]=arr[i];
}
//把目标元素放到新数组的最后
newarr[arr.length]=dst;
//新数组替换原数组
arr=newarr;
System.out.println("新数组中的元素为:"+ Arrays.toString(arr));
}
}
运行结果如下:
1.3数组中删除元素:
package array;
import java.util.Arrays;
public class TestArray2 {
public static void main(String[] args) {
//删除数组中的元素
int[] arr=new int[]{9,8,7,6,5,4};
//要删除的元素的下标
int dst=3;
System.out.println("原数组:"+ Arrays.toString(arr));
//创建一个新的数组,长度为原数组长度-1
int[] newarr=new int[arr.length-1];
//复制原数组中除了要删除的那个元素以外的其它元素
for(int i=0;i<newarr.length;i++){
//要删除的元素之前的元素
if (i<dst){
newarr[i]=arr[i];
//要删除的元素之后的元素
}else {
newarr[i]=arr[i+1];
}
}
//新数组替换旧数组
arr=newarr;
System.out.println("新数组:"+ Arrays.toString(arr));
}
}
运行结果如下: