文章目录
一、数组
1.1 数组介绍
- 数组可以存放多个
同一类型
的数据。数组
也是一种数据类型,是引用类型
。
public class Test{
public static void main(String[] args){
/**
* double[] 表示是double类型的数组,数组名 hens
* 我们可以通过 hens[下标] 来访问数组的元素
* 下标是从 0 开始编号的比如第一个元素就是 hens[0]
*/
double[] hens = {3,4,1,3.4,2,50};
// 可以通过 数组名.length 得到数组的大小/长度
for (int i = 0;i<hens.length ; i++) {
System.out.println("第"+(i+1)+"个元素的值="+hens[i]);
}
}
}
1.2 数组的使用
import java.util.Scanner;
public class Test{
public static void main(String[] args){
double[] array = new double[5];
Scanner scanner = new Scanner(System.in);
double score;
for(int i = 0;i < array.length;i++){
System.out.println("请输入第"+(i+1)+"个人的成绩:");
score = scanner.nextDouble();
array[i] = score;
}
for(int i = 0;i < array.length;i++){
System.out.println("" + array[i]);
}
}
}
import java.util.Scanner;
public class Test{
public static void main(String[] args){
double[] array;
array = new double[5];
Scanner scanner = new Scanner(System.in);
double score;
for(int i = 0;i < array.length;i++){
System.out.println("请输入第"+(i+1)+"个人的成绩:");
score = scanner.nextDouble();
array[i] = score;
}
for(int i = 0;i < array.length;i++){
System.out.println("" + array[i]);
}
}
}
1.3 数组使用注意事项和细节
1.4 数组赋值机制
1.5 数组反转
public class Test{
public static void main(String[] args){
int arr[] = {11,22,33,44,55,66,77};
int temp;
for(int i = 0;i < arr.length;i++){
if(i>=arr.length-1-i){
break;
}
temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i] = temp;
}
for(int i = 0;i < arr.length;i++){
System.out.println(""+arr[i]);
}
}
}
1.6 数组添加
二、排序
2.1 排序的介绍
2.2 冒泡排序
public class Test{
public static void main(String[] args){
int[] nums = {24,69,80,57,13};
int temp;
for(int i = 0;i<nums.length-1;i++){
for(int j = 0;j<nums.length-1-i;j++){
if(nums[j] > nums[j+1]){
temp = nums[j+1];
nums[j+1] = nums[j];
nums[j] = temp;
}
}
}
for(int i = 0;i<nums.length;i++){
System.out.println(""+nums[i]);
}
}
}
三、查找
四、多维数组
4.1 二维数组的使用
public class Test{
public static void main(String[] args){
int[][] arr = new int[10][]; // 创建 二维数组, 一共有10个子一维数组,
// 但是每个一维数组还没有初始化
}
}
4.2 二维数组的应用案例
public class Test{
public static void main(String[] args){
int raw = 10;
int[][] nums = new int[raw][];
for(int i = 0;i < nums.length;i++){
nums[i] = new int[i+1]; // 为每个一维数组创建子一维数组对象
if(i==0){ // 首行指定为1
nums[0][0] = 1;
continue;
}
for(int j = 0;j <= i;j++){
if(j==0 || j==i){ // 边界为1
nums[i][j] = 1;
continue;
}
nums[i][j] = nums[i-1][j] + nums[i-1][j-1];
}
}
// 打印二维数组
for(int j = 0; j < nums.length; j++){
for(int k = 0;k < nums[j].length; k++){
System.out.print(nums[j][k]+" ");
}
System.out.print("\n");
}
}
}
4.3 二维数组使用细节和注意事项
4.4 课堂练习
细节知识
数组赋值机制
注:值传递
与引用传递