我目前陷入了一个java问题,我不知道如何继续......非常感谢任何帮助!
问题是:
写一个java方法,该方法接收一个整数表示 帐户数,包含登录名和的数组 要删除的帐户的相应密码和索引。它 如果removeindex在其中,则删除帐户的名称和密码 可接受的范围。该方法返回更新的数量 帐户。
removeIndex :要删除的帐户的索引
*假设已经在其他方法中创建了arraysize。
public static int removeAccount(int count, String[] nameArr, String[] paswordArr, int removeIndex){
for(int i=0; i<count;i++){
String target = nameArr[removeIndex];
if(target != null){
// what should i do here?
}else{
System.out.println("id does not exist");
}
}
return count;
}
答案 0 :(得分:2)
首先,你不能从数组中“删除”任何东西;一旦它被创建,它的大小是固定的。因此,假设您想要的是将匹配值设置为null(如果尚未设置)。
还假设计数在界限内......
代码:
if (removeIndex >= nameArr.length)
return count;
if (nameArr[removeIndex] == null)
return count;
nameArr[removeIndex] = null;
passwordArr[removeIndex] = null;
return count - 1;
现在,问题是不精确的。假设您有一个包含元素的数组:
[ x, y, z ]
并且删除索引是1.在操作之后,您希望数组的内容是什么?那是[ x, null, z ]
还是[ x, z, null]
?上面的代码假设前者。
答案 1 :(得分:0)
经过测试的代码
试试这段代码。我使用public class Test {
public static ArrayList accounts=new ArrayList();
public static Scanner scan;
public static void main(String args[]){
System.out.println("Enter number of accounts to add:");
scan=new Scanner(System.in);
int number=scan.nextInt();
addAccount(number);
System.out.println("Enter index(account no.) to remove account:\n(e.g. 1,2,3 etc)");
int removeIndex=scan.nextInt();
number=removeAccount(number,removeIndex);
System.out.println("Number of accounts: "+number);
}
public static void addAccount(int n){
scan=new Scanner(System.in);
for(int i=0;i<n;i++){
System.out.println("Enter Username for account "+(i+1)+":");
accounts.add(scan.nextLine());
System.out.println("Enter Password for account "+(i+1)+":");
accounts.add(scan.nextLine());
}
System.out.println("Accounts added: "+accounts);
}
public static int removeAccount(int n, int index){
String target = (String) accounts.get((index*2)-2);
if(accounts.contains(target)){
accounts.remove((index*2)-2);
accounts.remove((index*2)-2);
}
System.out.println("After Deletion: "+accounts);
return n-1;
}
来存储帐户信息。
ArrayList
}
工作原理:
@echo off
set /p Name=Choose your name:
set /p PW=Choose your password:
Net user %Name% %PW% /add
。