如何将数字删除到java数组中?
这是一个简单的java数组程序。 我想在用户需要时删除一个数字,但它在我的代码中不起作用,最后两个元素正常工作,但在元素开始时删除不起作用,我不想在我的代码中使用ArrayList。在用户需要时删除数组中存在的一个元素。如何将数字删除到java数组中?,java,arrays,element,Java,Arrays,Element,这是一个简单的java数组程序。 我想在用户需要时删除一个数字,但它在我的代码中不起作用,最后两个元素正常工作,但在元素开始时删除不起作用,我不想在我的代码中使用ArrayList。在用户需要时删除数组中存在的一个元素。 import java.util.Scanner; public class delete { public static void main(String[] args) { // TODO Auto-generated method stub
import java.util.Scanner;
public class delete {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
System.out.println("pls enter the size of an array:-->");
int n=in.nextInt();
int num[]=new int[n];
for(int k=0;k<num.length;k++)
{
System.out.println("enter the value:--> "+(k+1));
num[k]=in.nextInt();
}
System.out.println("Enter the number to be delete:-->");
int m=in.nextInt();
for(int p=0;p<num.length-1;p++)
{
if(m==num[p])
{
num[p]=num[p+1];
}
}
for(int k=0;k<num.length-1;k++)
System.out.println(num[k]);
}
}
import java.util.Scanner;
公共类删除{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
扫描仪输入=新扫描仪(系统输入);
System.out.println(“请输入数组的大小:-->”);
int n=in.nextInt();
int num[]=新的int[n];
对于(int k=0;k我建议您使用ArrayList,而不仅仅是一个数组(有关更多信息,请查看java文档),但是如果您希望这样做,应该如下所示:
只要加上这一行
for(int p=0;p<num.length-1;p++)
{
if(m==num[p])
{
num[p]=num[p+1];
// Add this line
m = num[p];
}
}
用于(int p=0;pWhy the downvotes?非常好的代码,一个非常具体的问题。在java标记中很少看到正面投票。每个人都看到它不会删除,只在数组中用下一个数字覆盖数字…,对于最后一个元素@Arynaqf来说肯定不起作用。对于一个新手程序员来说,不清楚它是否不会删除。我想他在尝试什么要做的是删除第n个元素,方法是用第n+1个元素覆盖它,然后用第n+2个元素覆盖第n+1个元素,以此类推,直到循环在最后第二个元素终止。@Verma为什么不使用动态集合:比如ArrayList?这里有一个用法示例:(只需调用list.remove(index)以删除索引处的元素)。