Java代码实现数组中插入数据
public class ListInsert { public static long[] insert(long[] arr,int i,long l){ //新建数组,对原数组扩容 long[] arr1 = new long[arr.length+1]; //将原数组数据赋值给新数组 for(int j = 0;j<arr.length;j++){ arr1[j] = arr[j]; } //将大于i的数据向后移动一位 for(int j = arr1.length-2;j>i;j--){ arr1[j+1] = arr1[j]; } //赋值到i位置 arr1[i+1] = l; return arr1; } //测试 public static void main(String[] args){ long[] arr = {12,25,11,36,14}; long[] arr1 = insert(arr, 2, 100); for (long l : arr1) { System.out.print(l+" "); } }
数组的扩容方式:arr = Arrays.copyOf(arr, arr.length+1);
有兴趣的朋友可以修改数组的扩容方式,对上述代码进行优化,其实该方法底层的实现也是新建一个数组,万变不离其宗。
各位有更好的实现方法,可以分享给我哦,希望来场头脑风暴吧!
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: SSO
- 下一篇: 自己动手写SSO(单点登录)