JAVA中的数组插入与删除指定元素

JAVA中的数组插入与删除指定元素今天学了Java的数组,写了数组的插入和删除,本人小白,写给不会的小白看,大神请忽略,有错请大家指出来;/**给数组指定位置数组的插入*/importjava.util.*;publicclassArrayInsert{publicstaticvoidmain(String[]args){System.out.println(“请用键

大家好,又见面了,我是你们的朋友全栈君。

今天学了Java的数组,写了数组的插入和删除,本人小白,写给不会的小白看,大神请忽略,有错请大家指出来;

/** 给数组指定位置数组的插入 */
import java.util.*;
public class ArrayInsert{ 

public static void main(String []args){ 

System.out.println("请用键盘输入5个数:");
int [] array =new int[10];
Scanner sc=new Scanner(System.in);
//通过键盘向数组输入数
for(int i=0;i<array.length-5;i++){ 

array[i]=sc.nextInt();
}
//遍历数组
System.out.print("原数组为:");
for(int a:array){ 

System.out.print(" "+a);
}
//向指定的位置插入数
System.out.println("\n请输入插入位置:有效位置为0-----"+(array.length-1));
int index=sc.nextInt();
System.out.println("\n请输入插入的值-----");
int num=sc.nextInt();
//调用静态函数index
//遍历插入后的数组
System.out.println("插入元素之后的数组遍历:");
Insert(index,num,array);
for(int i=0;i<array.length;i++){ 

System.out.print(" "+array[i]);
}
}
//向数组指定位置插入数据方法
public static int[] Insert(int index,int num,int a[]){ 

//如果有元素,在索引之后的元素向后移一位,
for(int   a[i]=a[i-1];
}
a[index]=num;
return a;		
}
}
//删除数组指定位置的数字。
import java.util.*;
public class ArrayDelete{ 

public static void main(String args[]){ 

System.out.println("请用键盘输入5个数:");
int [] array =new int[10];
Scanner sc=new Scanner(System.in);
//通过键盘向数组输入数
for(int i=0;i<array.length-5;i++){ 

array[i]=sc.nextInt();
}
//遍历数组
System.out.print("原数组为:");
for(int a:array){ 

System.out.print(" "+a);
}
//删除在指定位置的数字
System.out.println("\n输入你要删除的位置: 范围在0---"+(array.length-1));
int index=sc.nextInt();
delete(index,array);//调用delete方法
//删除之后的遍历
System.out.println("删除之后的遍历:");
for(int i=0;i<array.length;i++){ 

System.out.print(" "+array[i]);
}
}
//数组的特性是,一旦初始化,则长度确定,所以要删除数组中元素,并且长度也随着删除而改变,则要重新建立数组
/** *删除方式1 */
public int[] delete(int index, int array[]) { 

//数组的删除其实就是覆盖前一位
int[] arrNew = new int[array.length - 1];
for (int i = index; i < array.length - 1; i++) { 

array[i] = array[i + 1];
}
System.arraycopy(array, 0, arrNew, 0, arrNew.length);
return arrNew;
}
/* *删除方式2 * 比如有数组 * int[] ints = {1, 2, 3}; * * @param index 注意:下标是从0开始的 * @param array 数组; * @return 删除之后的数组 */
public static int[] deleteByIndex(int index, int array[]) throws Exception { 

if (index < 0 || index > array.length-1) { 

throw new Exception("您输入的下标不在数组的边界内,请数组" + 0 + "到" + (array.length - 1) + "的范围");
}
//数组的删除其实就是覆盖前一位
int[] arrNew = new int[array.length - 1];
for (int i = 0; i < array.length - 1; i++) { 

if (i < index) { 

arrNew[i] = array[i];
} else { 

arrNew[i] = array[i + 1];
}
}
return arrNew;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/153287.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • error:opening registry key_ros初始化

    error:opening registry key_ros初始化运行sudoaptupdate的时候出现下面的错误:Err:11http://packages.ros.org/ros2/ubuntuxenialInReleaseThefollowingsignaturescouldn’tbeverifiedb…

  • pycharmsetting在哪_pycharm configuration怎么设置

    pycharmsetting在哪_pycharm configuration怎么设置关闭重复代码行提示File–>Settings–>Editor–>Inspections–>General–>Duplicatecodefragment

  • oracle 锁表 解锁 批量解锁[通俗易懂]

    oracle 锁表 解锁 批量解锁[通俗易懂]oracle锁表,解锁

  • Vmware安装win10的失败总结

    Vmware安装win10的失败总结下了番茄,萝卜,深度等多个win10镜像均出现各种莫名其妙的小问题,还是linux大法好哇~~失败一:          未手动分区,许久不装windows系统了,忘记了手动分区,用镜像里自带的分区工具,如diskgenius等分区后安装失败二:          分区后需进入bios设置优先从光盘启动的模式失败三:          找不到ghost文件,进入winPE手动查找光盘里…

  • charles打断点有什么用_charles打断点后 如何执行

    charles打断点有什么用_charles打断点后 如何执行前言Charles是收费软件,可以免费试用30天。试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过30分钟,并且启动时将会有10秒种的延时。此时,我们只需网上找一个注册码即可解

  • 2021年学习Java还有意义吗?

    2021年学习Java还有意义吗?Java编程语言今年已经26岁了,按照软件开发标准来说,这是非常古老的语言了。所以很多编程初学者想知道Java在2021年是否仍然有意义?是否值得学习?在那些还没有决定该专注于哪种语言和技术栈的人看来,Java正面临着来自JavaScript、Python和Kotlin之类语言的挑战。但这是否意味着Java在软件开发领域的受欢迎程度、相关性和实际重要性正在下降,转而学习其他技术将是一个更明智的选择?绝对不是。尽管你偶尔会看到一些观点,预示着Java日渐式微,但事实上,…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号