Java:class3 一维、二维数组
发布日期:2021-05-06 07:33:00 浏览次数:20 分类:精选文章

本文共 1574 字,大约阅读时间需要 5 分钟。

一维数组的定义,遍历,拷贝,扩容与缩容

1.一维数组:是相同数据类型的集合,一块连续内存

数组的定义
定义方式一:int []arr=new int[]{1,2,3};
定义方式二:int []arr=new int[5]; //默认值:0
定义方式三:int []arr={1,2,3}

2.new:在堆上开辟内存

3.arr.length:arr数组的长度

4.数组的遍历

(1)

for(int index=0;index

(2)

for(int value:arr) System.out.println(value);

(3)

System.out.println(Arrays.toString(arr));

5.ArrayIndexOutOfBoundsExcception:数组下标越界异常

6.数组的拷贝

1) for(int i=0;i<arr.length;i++ ) brr[i]=arr[i];

2) int []brr=arr.clone();

3) brr= Arrays.copyOf(arr,arr.length);

4) System.arraycopy(arr,0,brr,0,arr.length);

7.浅拷贝:拷贝出来的内容存在内存共享 //一般都是浅拷贝

深拷贝:拷贝出来的内容不存在内存共享,地址不同

8.定义grow方法进行扩容

public static void grow(int []arr){    int brr[]=new int[arr.length]+1;    System.arraycopy(arr,0,brr,0,arr,length);    return brr;}  arr=grow(arr);

9.System.arraycopy比Arrays.copyOf()运行效率高,但Arrays.copyOf()更方便

二维数组的定义,遍历,拷贝

数组的数组—二维数组的每一个元素是一个一维数组

1.二维数组的定义

int[][] arr = new int[3][5];                             //定义了一个整型的二维数组,其中包含3个一维数组,每个一维数组可以存储5个整数。          int[][] arr = new int[3][];                               //表示一个包含了三个整型的一维数组的二维数组。          int[][] arr = {  {2,5},{1},{3,2,4},{1,7,5,9}};           //注意:[]在变量名前的时候,是紧跟数据类型的;如果[]在后,则是属于当前变量名。

2.二维数组的拷贝

(1)

for(int i=0;i

(2)

int [][]brr=Arrays.copyOf(arr,arr.length);  //浅拷贝,brr使用的仍是同一块数据,地址一样。          for(int i=0;i

3.二维数组的遍历

int [][]b={  {2,2},{3,2}};            for(int i=0;i

4.arr.length:有几行,即几个一维数组

arr[0].length:有几列,即每个一维数组有几位

5, 将string转化为char数组:

String str="abcde";char[] c=new char[str.length()];c=str.toCharArray();

6.next()以空格,回车,tab等结束字符串,nextline只以回车

7.split(“*”):以**分割字符串

String []arr=str.split(" ");
上一篇:Java:【快速排序优化】与线性时间选择结合
下一篇:Java:class2 简单语句与运算符

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月27日 23时11分01秒