数组
2023-04-05 23:33:00 4 举报
AI智能生成
登录查看完整内容
day0403、0404
作者其他创作
大纲/内容
语法1: 数据类型 [ ] 数组名 = new 数据类型 [ 长度]
语法2: 数据类型 数组名[ ] =new 数据类型[ 长度]
动态初始化
数组静态初始化 不能分开
数组直接输出是内存地址
静态初始化
数组的创建
对数组元素进行访问 (循环)
数组中的每一个数据为数组元素
数组中的每一个元素都有与之对应得下标
数组中的下标范围0~数组长度-1
数组得长度通过数组名 . length 获取
数组长度如果超过边界会报错 下标越界异常
数组使用的细节
数组的遍历
缩容
数组的扩容
- 1.将相邻的两个元素进行比较,如果前面一个元素比后面的大,就交换位置(一轮比较) 直到比较完 整个数组,称为一轮 - 在这一轮可以将最大的值 比较到最后- 2.以上操作需要完成的次数数组长度-1
public static void sort3(int[] arr){ for (int i = 0; i <arr.length-1 ; i++) { //假设当前这一轮已经排好了 boolean flag=true; for (int j = 0; j <arr.length-i-1 ; j++) { if (arr[j]>arr[j+1]){ int temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; flag=false; } } System.out.println(\"第\"+(i+1)+\"轮的结果\"); for (int j = 0; j <arr.length ; j++) { System.out.println(arr[j]+\"\\t\"); } System.out.println(); //再次判断是否还需要进行轮数比较 if (flag){ break; } } }
冒泡排序(对数组的顺序进行排序)
- 1.将当前这个位置上的元素与后面的每一个元素进行比较,如果有比当前位置小的元素,先记录下来,等所有元素比较完,进行交换 - 一次循环可以将最小的交换到最左边- 2.以上操作可以将最小的选择到指定位置
//先选择一个数 进行比较大小 public static void sort(int[] arr){ for (int i = 0; i <arr.length-1 ; i++) {//负责选择的位置 //选择个数认为是最小的 int min=i; for (int j = i+1; j <arr.length ; j++) { if (arr[min]>arr[j]){ min=j; } } //将最小值与当前值进行交换 if (min!=i){ int temp=arr[i]; arr[i]=arr[min]; arr[min]=temp; } } for (int i = 0; i <arr.length ; i++) { System.out.println(arr[i]+\"\\t\"); } }
选择排序
Arrays工具类提供的排序方法
数组的排序
一维数组中存放的每一个元素,是一个数据
二维数组中存放的每一个元素,是一个一维数组
二维数组的创建
二维数组遍历
二维数组
数组在内存中一块连续的存储空间,可以保存 相同类型 多个数据的容器哦 且 长度固定。
数组的概念
数组保存保存的数据必须是相同的数据类型
数组的长度是固定的(一旦定义好 不可改变)
数组的特点
在数组创建的时候没有赋值的时候是有默认值的
- 整数型数组默认值:0- 浮点型默认值:0.0- 布尔型数组默认值:false- 字符型数组默认值:‘ ’ 0 或者‘ \\u0000’- 引用类型默认值是:null
null 是一个特殊的值 表示当前对象在内存当中不指向任何地址
\" \" 表示空字符串 在内存当中有对应的内存地址
数组的默认值
System.arraycopy
Arrays.copyOf
系统提供的扩容的方法
二分查找法(折半查找法)- 前提:数组必须有序的- 思路:- 1.首先确实数组中的中间元素,与你要查找的元素进行比较。如果相等那么就是你要找的数本身- 2.如果比中间元素大,那么要找的数一定在中间元素的右边 所以最小值小下标等于 中间值的下标+1- 3.如果比中间元素小,那么要找的数一定在中间元素的左边 所以最大值小下标等于 中间值的下标-1
二分查找法
可变参数:JDk 1.5 之后的新语法
语法:数据类型...参数名
- 特点:- 1.带有可变参数的方法进行调用的时候 实参个数 可以是0个 也可以是多个- 2.可变参数只能放在参数列表的最后 并且 可变参数一个方法只能有一个- 3.可变参数可以当作数组来使用 也可以将数组作为参数。
场景:当我不确定 参数个数使用。
可变参数
数组
0 条评论
回复 删除
下一页