java – 有没有办法将数组复制到具有较少元素数的相同数组
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 有没有办法将数组复制到具有较少元素数的相同数组,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1158字,纯文字阅读大概需要2分钟。
内容图文
![java – 有没有办法将数组复制到具有较少元素数的相同数组](/upload/InfoBanner/zyjiaocheng/819/52a12d3c5ce645228c0a53b3a18733ed.jpg)
参见英文答案 > Java arrays change size 6个
我有一个包含8个元素的数组,我需要从中删除第一个元素并将其复制到同一个数组中.我尝试使用System.arraycopy(…),但数组的大小没有改变.
int[] array = {90,78,67,56,45,34,32,31};
System.arraycopy(array, 1, array, 0, array.length-1);
我需要的是,数组应该包含78,67,56,45,34,32,31个元素,数组大小为7
有一种方法可以通过将其复制到另一个数组并将其分配给第一个数组来实现
int arrayB = new int[array.length-1];
System.arraycopy(array, 1, arrayB, 0, array.length-1);
array = arrayB;
但这不是我想要的方式.我需要它在没有另一个数组的帮助下完成.
解决方法:
从Java数组中删除元素然后缩小数组大小在Java中是不可能的,因为数组具有固定长度.当需求如此时,人们使用不同的数据结构,如ArrayList等.
这里有很多选项,但没有一个是您正在寻找的答案.
delete-item-from-array-and-shrink-array
how-do-i-remove-objects-from-an-array-in-java
在上述问题中提出的选项中,我个人喜欢这个答案,
Using ArrayUtils.removeElement(Object[],Object) from
org.apache.commons.lang is by far the easiest way to do this.
即使在这种情况下,诀窍是创建一个新大小的新数组并分配给相同的引用,因此原始数组已经消失但是,您的应用程序代码不需要创建两个数组.希望能帮助到你 !!
内容总结
以上是互联网集市为您收集整理的java – 有没有办法将数组复制到具有较少元素数的相同数组全部内容,希望文章能够帮你解决java – 有没有办法将数组复制到具有较少元素数的相同数组所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。