day11-二维数组

上期回顾:

​ 数组:

​ 1.数组的概念:存储同一种数据类型的多个数据,它们在内存空间上是连续的。

​ 2.数组的特点: 定长、数据类型一致、连续的内存空间、数组是引用数据类型,存储堆栈的应用地址。

​ 3.数组的使用:1.声明创建数组 2.通过数组名[index]存储、获取数据

​ 4.声明、创建、访问数组的语法

​ 5.数组的内存图:

​ 6.数组的遍历:for、for each循环

​ 7.数组中存储的数据类型默认值

​ 8.数组组合方法的使用

9.数组的排序:1.冒泡排序 2.选择排序 3.Arrays工具类

​ 10.可变参数

本期内容:

2.1 数组的排序

1、冒泡排序:

​ 比较相邻的两个数,较大的那个数据向后移动,长度减1.

public static void bubbleSort(String[] args){
		int[] arr = {12,23,17,22,10};
		for(int i = 1; i < arr.length; i++){//控制轮数
			for(int j = 0; j < arr.length - 1; j++){
				if(arr[j] < arr[j + 1]){
					int temp = arr[j];//交换
					arr[j] = arr[j +1];
					arr[j +1] = temp;
				}
			}
		}
		for(int e : arr){//打印结果
			System.out.print(e + " ");
		}
	}

2.选择排序:

​ 每个找个基准值,声明一个变量k表示比较小的值的下标,每一轮比较完,都在基准值上方一个比较小的数

//核心代码:
int[] a = {15,23,8,10,7};
for(int i= 0;i <a.length - 1;i++){//控制轮数,趟数
    int k = i;
    for(int j = k + 1;j<a.length;j++){
        if(arr[k] > arr[j]){
            k = j;
        } 
    }
    //交换
    if(k != i){
        int temp = arr[k];
        arr[k] = arr[i];
        arr[i] = temp;
    }
}

3.工具类:Arrays

int[] a = {15,23,8,10,7};
Arrays.sort(a);//给数组a排序
JDK提供好的类
   A:Scanner,读取键盘
   B:String,字符串
   C:Math,数学的
   D:Arrays,提供数组的常规操作的
   E:System,

2.2数组的复制:

方法一:通过循环,依次复制,将原数组的数据,一个一个,复制到目标数组中
方法二:Arrays类里方法:copyOf(原数组,新数组的长度)-->返回值是新数组
方法三:System类里的方法:arraycopy(原数组,原数组位置,新数组,新数组位置,拷贝的个数)
//1.数组的复制(一)
		int[] a = {1,2,3,4,5};
		int[] e =new int[5];
		for(int i = 0; i < a.length; i++){
			e[i] = a[i];
			System.out.print(e[i] + " ");
		}
		System.out.println();
//2.数组的复制(二)
		int[] b = Arrays.copyOf(a,5);
		for(int f : b){
			System.out.print(f + " ");
		}
		System.out.println();
//3.数组的复制(三)
		int[] c = new int[5];
		System.arraycopy(a, 0, c, 0, 5);
		for(int d : c){
			System.out.print(d + " ");
		}
		System.out.println()

内存图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vk4Vva3i-1585408050384)(C:\Users\徐嘟嘟\AppData\Roaming\Typora\typora-user-images\image-20200328195114574.png)]

2.3 二维数组

维度:dimension
数组:存储相同类型的一组数据。
一维数组:数组中存储的就是数据了。
二维数组:存储的是一维数组。本质也叫数组的数组。也被称为矩阵:行和列的。(简单理解,数组里边儿还存着数组)

内存图:

.3 二维数组

维度:dimension
数组:存储相同类型的一组数据。
一维数组:数组中存储的就是数据了。
二维数组:存储的是一维数组。本质也叫数组的数组。也被称为矩阵:行和列的。(简单理解,数组里边儿还存着数组)

内存图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0sRdkzp9-1585408050386)(C:\Users\徐嘟嘟\AppData\Roaming\Typora\typora-user-images\image-20200328195249543.png)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值