您的位置 首页 java

java开发中经常使用的数组以及使用方法

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

一.什么是数组

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

  2. 特点:

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

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

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

  3. 分类:

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

二.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

  System.out.println(array[i]);

  }

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

  for(Integer data : array){

  System.out.println(data);

  }

  5. 类型转换:

  A. 数组转为Set集合:

  使用java api 中Arrays 工具类进行转换为list,再转为set:

  Set set = new HashSet(Arrays.asList(array));

  B.数组转为List集合:

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

  第二种,使用api java.util.Arrays进行转换:

  List 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开发中经常使用的数组以及使用方法

文章地址:https://www.zhihuclub.com/175516.shtml

关于作者: 智云科技

热门文章

评论已关闭

5条评论

  1. If you truly mean you want to be there for your son and wife, you will have to learn to deal with everything a little better or you will go crazy and that will not be good for any of you The resulting mixture was purified by silica gel column chromatography hexanes and a 3 1 mixture of ethyl acetate ethanol to afford tert butyl 2R, 5S 4 1 4 4 tert butyldimethylsilyl oxy butyl 2 isopropylpyridin 3 yl 7 chloro 6 fluoro 2 oxo 1, 2 dihydropyrido 2, 3 d pyrimidin 4 yl 2, 5 dimethylpiperazine 1 carboxylate Int 107a

  2. The median age of treated patients across treatment arms was 65 years range 18 to 93 years, with approximately 53 of patients aged greater than or equal to 65

网站地图