3.数组

1.数组

数组的定义方式:

1.double [ ] x = {……};
//数据类型[ ] 数组名
2.动态初始化方式:
语法:数据类型 数组名[ ] = new 数组类型[大小]
int a [ ] = new int[5];
先声明数组:
语法:数据类型 数组名[ ]
int a [ ];
创建数组:
语法:数组名 = new 数据类型[大小];
a = new int [5];
3.静态初始化
语法:数据类型 数组名[ ] = {元素值……}
int a [ ] = {1,2,3,4,5};

2.选择排序法

描述:冒泡排序法是有一个符合条件的就进行交换,而选择排序法是从头比到尾在进行交换

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.util.Arrays;
public class day9_8_1{
public static void main(String[]args){
int arr[] = {24,69,80,57,13};
int temp = 0;
for(int i = 0;i < arr.length-1;i++){
for(int j = i+1;j < arr.length;j++){
if(arr[i]>arr[j]){ //从小到大排序
temp = arr[j];
arr[j] = arr[i];
arr[i] = temp;
}
}
}
System.out.println(Arrays.toString(arr));//遍历数组
}
}

3.冒泡排序法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import java.util.Arrays;
public class day9_8_2{
public static void main(String[]args){
int arr [] = {24,69,80,57,13};
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;
}
}
}
System.out.println(Arrays.toString(arr));
}
}

4.查找数组

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import java.util.Scanner;
public class day_9_9_1{
public static void main(String[]args){
Strint arr [] = {"耗子","旭子","强子","宇子"};
Scanner sc = new Scanner(System.in);
System.out.println("请输入要查找的字符串");
String name = sc.next();
int index = -1;//判断是否查找成功
for(int i = 0;i <=arr.length;i++){
if(name.equals(arr[i])){ //equals用来比较字符串内容,这里用来判断name和arr[i]的字符串是否相等。
System.out.println("恭喜你找到了"+name+"它的下标为"+i);
index = i;
break;
}
}
if(index = -1){
System.out.println("Sorry,并没有找到"+name);
}
}
}

5.二维数组

5.1二维数组的定义方式(静态初始化):

int arr [ ] [ ] ={ {……} };

例如:

1
2
3
int arr [ ] [ ] = {{0,0,0,0,0},
{1,1,1,4,1},
{2,2,2,2,2}};

可以理解为:每一对{ }都是一个一维数组,多个一维数组构成二维数组。
如何访问二维数组中的某个元素:
例:我们要寻找arr数组中的4,则表达式为arr[1][3];
二维数组的动态初始化方式:

语法:类型 数组名[ ][ ] = new 类型[大小][大小];
例如:int arr [ ] [ ] = new int[2][3];
//这样就定义了一个二行三列的数组。
也可以写成int arr;//先声明,arr = new int [2][3];//再开辟空间。

5.2遍历一个二维数组

1
2
3
4
5
6
for(int i = 0;i < arr.length;i++){
for(int j = 0;j < arr[i].length;j++){
System.out.print(a[i][j]+"");
}
System.out.println( );//换行
}

5.3让两个二维数组的长度相等

1
2
3
4
5
int [] [] arr1 = {{1,2,3,4},{1,2,3,4},{1,2,3,4},{1,2,3,4}};
int [] [] arr2 = {{1,2,3,4},{1,2,3,4},{1,2,3,4},{1,2,3,4}};
int [] [] arr3 = new int [arr1.length][arr1.length];
int [] [] arr4 = new int [arr2.length][arr2.length];
//arr3,arr4的值为空,但是有长度,和arr1,arr2的长度相等

3.数组
http://example.com/2022/09/05/java/3.数组/
作者
haozi0o0
发布于
2022年9月5日
许可协议