数组
一、数组-冒泡排序
public class Deom01{
public static void main(String[] args){
int[] arr = {6,3,7,5,2,1};
for(int i = 0;i<arr.length-1;i++){
for(int j = 0;j<arr.length-1-i;j++){
if(arr[j] > arr[j+1]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
for(int element : arr){
System.out.println(element);
}
}
}
二、数组-线性查找
public class Test02 {
public static void main(String[] args) {
int[] arr={2,56,87,567,234,1,4};
int num=567;
for(int i=0;i<arr.length-1;i++){
if(num==arr[i]){
System.out.println("元素下标为:"+i);
}
}
}
}
三、数组-二分法查找
public class Test02 {
public static void main(String[] args) {
int[] arr={2,56,87,567,234,1,4};
Arrays.sort(arr);
int num=87;
int start=0;
int end=arr.length-1;
while(start<=end){
int mid=(start+end)/2;
if(num<arr[mid]){
end=mid-1;
}else if(num>arr[mid]){
start=mid+1;
}else{
System.out.println("元素下标为"+mid);
break;
}
}
}
}
四、数组-浅表赋值
public class Test02 {
public static void main(String[] args) {
String[] name={"麻生希","椎名空","水菜丽"};
String[] arr=name;
arr[1]="123";
for (String a : arr) {
System.out.println(a);
}
}
}
五、数组-深表赋值
public class Test02 {
public static void main(String[] args) {
String[] name={"麻生希","椎名空","水菜丽"};
String[] newName=new String[name.length];
for(int i=0;i<name.length;i++){
newName[i]=name[i];
}
name[1]="123";
for (String a : newName) {
System.out.println(a);
}
}
}
六、数组-扩容
public class Test02 {
public static void main(String[] args) {
//原素组
String[] name={"麻生希","椎名空","水菜丽"};
//定义原先数组长度
int old=name.length;
//定心新的长度
int newLength=old+(old>>1);
//定义一个新数组,新数组的长度等于新的长度
String[] arr=new String[newLength];
//将name的值赋值给newName
for(int i=0;i<name.length;i++){
arr[i]=name[i];
}
//将新数组赋值给原数组
name=arr;
//遍历原数组
for (String a : name) {
System.out.println(a);
}
}
}
七、数组的删除
案例一
public class Test02 {
public static void main(String[] args) {
String[] newArr = new String[arr.length-1];
int index=0;
for(String element:arr){
if(!element.equals("椎名空")){
newArr[index++]=element;
}
}
arr = newArr;
for(String element : arr){
System.out.println(element);
}
}
}
案例二
public class Test02 {
public static void main(String[] args) {
String[] arr = {"麻生希","椎名空","水菜丽","樱井步"};
for(int i=1;i<arr.length-1;i++){
arr[i]=arr[i+1];
}
arr[arr.length-1]=null;
for(String element : arr){
System.out.println(element);
}
}
}