楼上的明显不行啊,这不还是只能去掉一个数字么?如果一个数组里有好几个相同的怎么办?
需要import java.util.Scanner;
楼主可根据需要自己改为传参函数
public static void main(String args[]){
System.out.println("请输入数字组,数字请以,隔开");
Scanner scanner =new Scanner(System.in);
String str=null;
str=scanner.nextLine();
System.out.println("请输入要去除的数");
String rm=null;
rm=scanner.nextLine();
if(str.indexOf(rm)==-1){
System.out.println("要去除的数字不存在");return;}
System.out.println("要去除第几个(输入个数)?还是都除去?(输入’ -1‘)");
int n=scanner.nextInt();
if(n==0||n<-1){
System.out.println("非法输入");return;}
else if(n==-1){
str=","+str;
rm=","+rm;
str=str.replaceAll(rm,"");
if(str.charAt(0)==',')
str=str.substring(1);
System.out.println("结果为:"+str);
return; }
String str2[]=str.split(",");
for(int k=0;k<str2.length;k++)
if(str2[k].equals(rm)){
n--;
if(n==0){
n=-k;break;
} }
if(n>0){
System.out.println("要去除的数字不存在");return;}
String str3="";
boolean l=false;
for(int k=0;k<str2.length;k++){
if(k==-n)
continue;
if(l)
str3+=",";
str3+=""+str2[k];
l=true;
}
System.out.println("结果为:"+str3); }
用例:
请输入数字组,数字请以,隔开
3,999,324,4,4,3,6,3,3,3,536,4,58
请输入要去除的数
3
要去除第几个(输入个数)?还是都除去?(输入’ -1‘)
1
结果为:999,324,4,4,3,6,3,3,3,536,4,58
请输入数字组,数字请以,隔开
3,999,324,4,4,3,6,3,3,3,536,4,58
请输入要去除的数
3
要去除第几个(输入个数)?还是都除去?(输入’ -1‘)
4
结果为:3,999,324,4,4,3,6,3,3,536,4,58
温馨提示:答案为网友推荐,仅供参考