栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java中数组Array

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java中数组Array

数组 数组的特点:
  • 数组是用来存储一组有序数据的容器
  • 数组中存储数据的地址是连续的
  • 数组中存储数据的类型是一致的
  • 数组一旦创建、长度不可改变
声明数组

第一种: 类型 变量名 [ ] ; (推荐写法)
第一种: 类型 变量名 [ ] ; (官方不推荐写法)

创建数组

第一种:变量名 = new 数组类型 [数组长度];
第二种:变量名 = new 数组类型 [ ]{val1,val2 ……};

声明并创建数组
1.  类型[]  变量名 =  new 类型[长度] ; 

2.  类型[]  变量  = new 类型[] {val, val1, val2 ....} ;

3.  类型[]  变量名 = {val, val2, val3 ...} ;

数组的基本操作
  • 获取 数组中的指定位置的元素
数组变量[index] 

index 指的是 数组中的索引,从 0 开始
  • 修改 数组中指定位置的元素
数组变量[index]  = val ;

index的值的范围是 0 ~ 数组的长度 - 1

  • 获取数组的长度
数组.length 
  • 遍历数组
for(int i= 0 ; i < array.length; i++) {
     int x = array[i] ;
     ...
}
数组的排序

这里只介绍 冒泡排序 、插入排序、插入排序

  • 冒泡排序

数组中两个相邻的数字进行比较、并交换,将大的数字沉到数组的尾部(升序排列)

int[] array = {12,0,45,1,3,45,2,0};
//外层循环控制比较 趟数
for(int i = 0; i < array.length; i++){
	//内循环控制每趟比较的次数
	for(int j = 0; j < array.length - i; j++){
		//比较两个相邻的数 将较大的元素放在后面
		if(array[j] > array[j + i]){
			//交换两个数
			array[j] = array[j] ^ array[j + 1];
			array[j + 1] = array[j] ^ array[j + 1];
			array[j] = array[j] ^ array[j + 1];
		}
	}
}
选择排序

数组中的一个元素和它后面所有的元素进行比较、并交换,将小的数字沉到数组的头部(升序排列)

int[] array = {12,0,45,1,3,45,2,0};
	//外层循环控制比较 趟数
	for(int i = 0; i < array.length-1; i++){
		//假设第一个元素为最小元素
		int minIndex = i;
		//内循环控制每趟比较的次数
		for(int j = i+1; j < array.length; j++){
			if(array[minIndex] > array[j]){
				minIndex = j;//交换最小下标
			}
		}
		//循环结束 交换array[i] 与 array[minIndex]
		int temp = array[minIndex];
		array[minIndex] = array[i];
		array[i] = temp;
	}
Arrays 工具类的使用
  • Arrays.toString(array) : 将指定的数组以字符串的形式表示,返回一个字符串
  • Arrays.sort(array) : 对指定的数组 按照升序进行排序 (底层采用的快速排序)
  • Arrays.sort(array, from, to) : 将数组的 from … to 之间的元素进行 排序
  • Arrays.copyOf(array, newLen) : 将数组中从第1个元素到 newLen长度的内容拷贝到新数组中
  • Arrays.copyOfRange(array, from , to) : 将数组的 from … to 之间的元素拷贝到新数组中
  • Arrays.stream(array).max() : 求数组的最大值
  • Arrays.stream(array).min() : 求数组的最小值
  • Arrays.stream(array).sum() : 求数组的和
  • Arrays.stream(array).average() : 求数组的平均值
ArrayUtils 工具类的使用

不是 JDK 自带的, 是 apache 提供的,封装在了 commons-lang3.jar 中
jar 是 一个压缩文件、jar里面压缩的是 .class 字节码文件
Java中 jar的下载,推荐在 http://www.mvnrepository.com 网站中下载
在 idea的项目中,新建一个文件夹,推荐叫 lib
将下载好的 jar 拷贝到 lib 文件夹下
将 lib 文件夹作为 库 ( 选中 lib 右键 —> add as Libary )

  • add : 向数组尾部添加一个元素

  • addAll : 向数组尾部添加 多个元素

  • addFirst : 向数组头部添加一个元素

  • remove : 根据索引删除指定位置的元素

  • removeElement : 删除数组中指定的元素

  • removeAllOccurrences :删除数组中指定的元素的所有

  • clone() : 克隆一个数组,返回一个新数组,和原数据内容一样

  • toObject() : 将 基本类型数组 转成 包装类型数组

  • toPrimitive() : 将 包装类数组 转成 基本数据类型数组

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1004090.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号