数组拷贝的错误两个整数数组a和b,a={1,2,3,2,3},b={4,5,6,111,222,333,444,555,66},将a的几个元素拷贝给b怎么总是报错?

rollrock 2004-05-08 11:13:39
类:
import javax.swing.*;
public class Test
{
public static void main(String[] args)
{
int[] a={1,2,3,2,3};
int [] b={4,5,6,111,222,333,444,555,66};
b=System.arraycopy(a,2,b,3,4);
for (int i = 0; i<b.length; i++)
System.out.println (b[i]);
}
}
报错信息:
E:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\test\Test.java:8: incompatible types
found : void
required: int[]
b=System.arraycopy(a,2,b,3,4);
^
...全文
152 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaray 2004-05-08
  • 打赏
  • 举报
回复
改一下:
System.arraycopy(a,0,b,b.length,a.length); // 任何数组都适用
yaray 2004-05-08
  • 打赏
  • 举报
回复
System.arraycopy(a,0,b,a.length-1,b.length); // 任何数组都适用
myhotsun 2004-05-08
  • 打赏
  • 举报
回复
b=System.arraycopy(a,2,b,3,4);应该这么写
System.arraycopy(a,2,b,3,4);arraycopy方法是void类型的
whyxx 2004-05-08
  • 打赏
  • 举报
回复
里面错误很多,
第一:System.arraycopy是没有返回值的,不能赋值给b
第二:你的写法表示的意思是从a的第3位开始,向b的第4位开始拷贝4个过去,但a从第3位开始没有4个数字可以拷,所以也会出错,你可以改成System.arraycopy(a,0,b,3,4);看看结果就知道了
wandou999 2004-05-08
  • 打赏
  • 举报
回复
各个数加"单引号"试试!!

81,114

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧