首页 > 编程语言 >Java数组的使用

Java数组的使用

时间:2023-01-28 16:01:19浏览次数:38  
标签:Java Arrays 元素 int 数组 使用 java array

本文介绍了在java开发中经常使用的数组,以及数组的使用方法,注意事项。

一.什么是数组

1. 数组:数组即是一堆逻辑上无序的元素的序列,用来存储多个相同类型的数据,数组可以看做是一个集合,其内部元素存储在一个连续的内存块当中,并通过索引(即数组中元素的下标)来访问。

2. 特点:

A. 数组中的元素数据类型都相同;

B. 各元素在内存中的存储是有先后顺序的;

C. 表示数组元素的时候,需要使用数组名和该元素在数组中的位置来表示;

3. 分类:

最简单的形式是一维数组,即数组中直接存储元素,如{1,2,3,4};其次是二维数组,在二维数组中的元素都是一维数组,如{{123},{456},{789}};再次意义上可以有更多维的数组。

Java数组的使用_赋值

二.Java中的数组

(以下示例中皆以整型一维数组 int array[] 为例)

1. 特点:

java中的数组满足数组的所有含义和特点;

2. 声明数组:

在java中,声明数组时有两种情况:有大小,或者无大小,同时在声明数组时,需要声明数组的数据类型,以及数组的维度,声明方式分为以下几种:

a. int array[] = {1,2,3};直接在声明数组的同时进行赋值;

b. int array[] ;声明数组未进行赋值操作;

c. Int array[] = new int[10];声明数组时定义了数组的大小;

3. 数组长度:

使用数组的 length 属性,可已查看数组的大小:

Int length = array.lenth;

4. 遍历数组:

在开发中,根据数组的特性,经常会通过循环来遍历数组,如for循环或forEach循环:

For循环,根据数组的小标进行遍历:
for(int i=0;i<array.length;i++){
System.out.println(array[i]);
}

ForEach循环,根据数组的数据类型得到元素,进行遍历:

for(Integer data : array){

System.out.println(data);

}

3. 类型转换:

A. 数组转为Set集合:

使用java api 中Arrays 工具类进行转换为list,再转为set:
Set<Integer> set = new HashSet<Integer>(Arrays.asList(array));

B.数组转为List集合:

第一种:遍历数组,向list中添加元素;

第二种,使用api java.util.Arrays进行转换:
List<Integer> list = Arrays.asList(array);

6. java数组常用操作:

A. int数组转换为String:

String result =Arrays.toString(array);

B.判断数组是否包含元素:

使用数组的contains 方法进行判断,该方法返回值为boolean类型,如果包含该元素,返回值为true,否则返回false;

如:int array[] = {1,2,2,3,4,5};

array.contains(1)返回值为true;array.contains(6)返回值为false;

C.填充数组:

第一种可通过循环数组的下标(index),维数组的每一个位置进行赋值(array[index] = data);

第二种可以通过工具类Arrays进行填充,如:Arrays.fill(array,5),将array的每个位置都赋值为5.

D.复制数组:

第一种方法是直接指定新的数组:int array2[] = Arrays.copyOf(array,20),将数组array复制到array2中,同时指定array2的数组大小是20;

第二种方法是根据指定范围进行赋值,如:

Int array2[] = Arrays.copyOfRange(array,5,10);将array中第5位到第9位的元素复制到array2中。

E.比较数组:

通常使用Arrays.equals()方法进行比较,返回值为boolean类型,如Arrays.equals(array,array2);

F.数组排序:

在java中,通常可以通过循环,按照特定的业务逻辑进行排序,如果对元素没有特殊要求,则可以通过Array.sort()方法进行排序,如:Arrays.sort(array);对数组进行排序;

Arrays.sort(array,2,6);对数组的第2个元素到第5个元素进行排序。

三.Java中的数组与内存

在java中,若声明数组时直接进行赋值,则为数组分配的内存中直接存入数值;若声明数组时没有进行赋值,只说明了数组的大小size,则在数组的内存块中,有size个状态为null的内存块被占用;

当程序执行结束后,数组的有效长度如果变小,这时需要注意数组原先占用的内存块不会被jvm处理,如果这种情况比较多,则会发生内存泄漏,此时需要程序员在使用数组后,及时对无效的资源进行释放,即在数组的该元素为空,array[index] = null.

四.总结

在java中,数组是经常使用的技术,通过一个能够存储多个相同类型数据元素的容器来实现各种需求,同时在数组内部可以通过位置下标来快速所以数据,增加了java程序的可读性与健壮性;在使用数组的同时,也需要注意数组容易造成的内存泄漏等问题。

标签:Java,Arrays,元素,int,数组,使用,java,array
From: https://blog.51cto.com/u_14217621/6024981

相关文章

  • Java类图
    一、箭头:指向父类或接口。指向依赖物。指向子元素。箭头形状:1.继承、实现是**三角型箭头**,其他都为箭头2.组合、聚合都有一个**菱形端**,且都为**实线**,其他都无菱形......
  • 腾讯智影使用攻略:如何使用模板功能讲解飞盘运动
    大家好我是智影小助手小智,小智最大的愿望就是为使用智影的用户创作出更多精彩的内容,小智特别创作的《智影使用攻略》专题助力大家快速掌握智影创作的操作方法,创作出专属于......
  • 腾讯智影使用攻略:数字人播报技巧
    大家好,我是智影小助手小智,小智最大的愿望就是为使用智影的用户创作出更多精彩的内容,小智特别创作的《智影使用攻略》助力大家快速掌握智影创作的操作方法,创作出专属于你的......
  • java 环境配置(二) 安装IDEA
    1.安装地址:IntelliJIDEA–theLeadingJavaandKotlinIDE(jetbrains.com)   下载  下载完成双击安装即可  继续->  退出 ......
  • 腾讯智影使用攻略:视频解说功能
    大家好我是智影小助手小智,小智最大的愿望就是为使用智影的用户创作出更多精彩的内容,小智特别创作的《智影使用攻略》专题助力大家快速掌握智影创作的操作方法,创作出专属于......
  • Java基础学习08
    多态的使用及细节(2023-01-28)1.对象多态:对象多态涉及到向上转型和向下转型,首先对象多态格式为  父类类型父类引用=new子类(向上转型)运用此方法可以更方便维护代码......
  • 什么是LRU(最近最少使用)算法?
    一、什么是LRU?LRU(LeastRecentlyUsed),最近最少使用。是一种【内存管理】算法。LRU算法基于一种假设:长期不被使用的数据,在未来被用到......
  • 对于Java平台的理解
    谈谈你对Java平台的理解?“Java是解释执行”,这句话正确吗? Java本身是一种面向对象的语言,最显著的特性有两个方面,一是所谓的“一处编译,处处运行”(Writeonce,runanyw......
  • 使用备份和还原将 SQL Server 数据库从 Windows 迁移到 Linux
    建议使用SQLServer的备份和还原功能将数据库从Windows上的SQLServer迁移到Linux上的SQLServer。在本教程中,将逐步完成使用备份和还原方法将数据库迁移到Linu......
  • php开启ziparchive类,php压缩解压文件ZipArchive类的方法使用教程
    php中有一个ZipArchive类,可以用于文件的压缩与解压的操作,ZipArchive类的使用教程,可以查看下面的方法。phpZipArchive类使用方法1、声明一个ZipArchive类的使用方法$zi......