社区
Java SE
帖子详情
数组复制
liumingwei2009
2009-12-11 09:03:27
写代码时要用一个数组复制的方法,我就去Arrays类找,结果没找到。网上一搜原来在System类里。
我想问一下为什么sun要把数组复制的方法放在System里?有什么含义没有?
...全文
89
8
打赏
收藏
数组复制
写代码时要用一个数组复制的方法,我就去Arrays类找,结果没找到。网上一搜原来在System类里。 我想问一下为什么sun要把数组复制的方法放在System里?有什么含义没有?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
苍蝇①号
2009-12-11
打赏
举报
回复
这就得去问sun为什么了。
个人理解可能是因为copyOf多数直接调用系统底层的功能复制,而往往这些功能都和system有联系,比如汇编中的内存拷贝等
michaellufhl
2009-12-11
打赏
举报
回复
java.lang.System.arraycopy(Object, int, Object, int, int) 是个native方法,效率很高。
sahala3293
2009-12-11
打赏
举报
回复
[Quote=引用 5 楼 liumingwei2009 的回复:]
引用 3 楼 swandragon 的回复:
Arrays里也有拷贝的方法
在哪里 啊?我找遍了也没看见
[/Quote]
Arrays里的copyOf看看api吧1.6的新加的
liumingwei2009
2009-12-11
打赏
举报
回复
[Quote=引用 3 楼 swandragon 的回复:]
Arrays里也有拷贝的方法
[/Quote]
在哪里 啊?我找遍了也没看见
捏造的信仰
2009-12-11
打赏
举报
回复
也许是好玩而已。。。
swandragon
2009-12-11
打赏
举报
回复
Arrays里也有拷贝的方法
JavaAlpha
2009-12-11
打赏
举报
回复
可以自己写一个方法实现 。可以去看一下 java内部的代码实现。
人家既然这么写 肯定是有好处的。有他这么写 道理的。
keeya0416
2009-12-11
打赏
举报
回复
人家定的规范,主观想法而已,没什么大的理由
Java
数组
的
复制
1、
数组
复制
:Arrays.copyOf(原
数组
,新
数组
的长度); 注意: 该方法是创建新
数组
然后将原
数组
的值
复制
到新
数组
的过程。 如果新
数组
的长度小于原
数组
的长度,则
复制
到原
数组
该长度的位置; 如果新
数组
的长度大于原
数组
的长度,则剩余的长度会默认使用0进行填充。 使用该方法的时候,要用新的
数组
进行接收原
数组
的
复制
结果。 例:新
数组
arr1接收
复制
arr的结果,长度为arr的长度 int[] arr = new int[]{1,2,3,4,5}; int[] arr1 = Arrays.copyOf(a
数组
的
复制
常用方法
数组
的
复制
常用方法
数组
不可以直接
复制
,如: int []arr= {1,2,3}; int []arr2=arr;//不可以 正确方法
数组
复制
方法一: 通过遍历原
数组
,遍历的过程中,对原
数组
进行取值, 然后在赋值给新的
数组
。 注意: 这种
复制
方法要求,目标
数组
的长度,不能小于原
数组
的长度, 否则
复制
的过程中会出现,ArrayIndexOutOfBoundsException(
数组
下标越界异常) 如果目标
数组
的长度比原
数组
的长度长,则
复制
完成后,
复制
出来的
数组
中, 没有
复制
过去的元素值,为默认值。
C++
数组
怎么
复制
C++
数组
怎么
复制
: #include <string.h>main(){int a[10]={34,56,4,10,77,51,93,30,5,52};int b[10];memcpy(b,a,sizeof(b));} 这样就行了~ C++如何把一个动态
数组
复制
到另一个动态
数组
中去: int *p1=new int[100];for(int i=0;i&l...
js
复制
一个
数组
(浅
复制
、深
复制
)
在js中,我们经常会用到
数组
复制
,Array是引用类型,如果用arrA=arrB简单的把一个
数组
赋值,并没有创造出一个新
数组
,arrA和arrB其实指向的还是同一个地址,改变一个另一个也会随之改变,很明显这并不是我们想要的 var arr = [1, 2, 3]; var newArr = arr; arr.push(4); console.log(newArr1); // [1, 2, 3, 4] 下面介绍
数组
的浅
复制
(适用于
数组
并不复杂,即
数组
中没有嵌套对象或者嵌套
数组
) 方法一:c
数组
的
复制
public class test{ public static void main (String [] args) { System.out.println("==========一维
数组
====================="); //一维
数组
String[] intArr= {"Mircos
Java SE
62,621
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章