搜索
首页JavaJava入门java如何进行数组复制

java如何进行数组复制

May 06, 2020 pm 04:17 PM
java数组复制

java如何进行数组复制

JAVA 数组复制的方法

1、使用for循环遍历,效率最低

int [] arr = {1,2,3,4,5,6,7,8}; 
int [] arr1 = new int [arr.length]; 
for (int i = 0; i <arr.length ; i++) {
      arr1[i]=arr[i];
  }
System.out.println(Arrays.toString(arr1)); //结果[1, 2, 3, 4, 5, 6, 7, 8]

(视频教程推荐:java视频

2、使用Arrays中提供的方法

2.1copyof() 效率次于第三种

// orinigal表示要复制的数组;newlength表示要复制的长度,如果newlength>original.length,多出的部分将以数组默认值的方式给出
public static int[] copyOf(int[] original,int newLength)
int [] arr = {1,2,3,4,5,6,7,8}; 
int [] arr2 = Arrays.copyOf(arr,3);
System.out.println(Arrays.toString(arr2));// 输出 [1, 2, 3]

2.2copyOfRange() 复制指定长度的数组

public static <T> T[] copyOfRange(T[] original,int from,int to)  // 左闭右开// T - 数组中对象的类  
// original - 要从中复制范围的数组 
// from - 要复制的范围的初始索引(包括) 
// to - 要复制的范围的最终索引,不包括。 (该索引可能位于数组之外)
    
int [] arr = {2,5,4,6,8,7};
int [] arr2 = Arrays.copyOfRange(arr,1,7);
System.out.println(Arrays.toString(arr2));// 输出[2, 3, 4, 5, 6, 7]
// 当 to 的值为 9 时,此时超出了原数组的长度,结果为[2, 3, 4, 5, 6, 7, 8, 0]

3、System.arraycopy() 效率最高

public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
//	src - 源数组。 
//	srcPos - 源数组中的起始位置。 
//	dest - 目标数组。 
//	destPos - 目的地数据中的起始位置。 
//	length - 要复制的数组元素的数量。
int [] arr = {1,2,3,4,5,6,7,8};
int [] arr3=new int [arr.length];
System.arraycopy(arr,1,arr3,2,5);
System.out.println(Arrays.toString(arr3)); // 结果[0, 0, 2, 3, 4, 5, 6, 0]

推荐教程:java入门程序

以上是java如何进行数组复制的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:博客园。如有侵权,请联系admin@php.cn删除

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境