gpt4 book ai didi

Java 从 listArray 中删除条目

转载 作者:行者123 更新时间:2023-12-01 23:58:07 24 4
gpt4 key购买 nike

我有一个创建地址簿的作业。我基于良好的可用性创建了我的程序。例如,当创建新条目时,用户无法移动到下一个输入,直到给出有效的输入或选择取消。创建程序后,我正在阅读导师给出的大学示例,并且在添加条目之前没有检查有效输入,而是发送 .add 请求,然后在检测到错误数据时引发异常。

我问我的导师我是否应该这样做,因为即使我认为我的设计更好,我也不想丢分,因为我没有按照他们的方式做。他说我应该坚持以下示例:

public AddressBook()
{
entries = new ArrayList < Entry >();
}

public void addPerson(Entry addPerson)
{
entries.add(addPerson);
}

private void addCommand()
{

System.out.print("Enter Full Name : ");
String name = myScanner.nextLine();
System.out.print("Enter House No and Street name: ");
String street = myScanner.nextLine();
System.out.print("Enter Town: ");
String town = myScanner.nextLine();
System.out.print("Enter Postcode: ");
String postcode = myScanner.nextLine();
postcode = postcode.toUpperCase();

addressBook.addPerson(new Entry(name, street, town, postcode));
}

public Entry(String strName, String strStreet, String strTown, String strPostcode)
{
name = strName;
street = strStreet;
town = strTown;
postcode = strPostcode;
try
{
checkDetails();
}
catch ( BadDataException e)
{
throw new RuntimeException( e.getMessage()); }
}

我尝试了这种方式并更改了:

throw new RuntimeException(e.getMessage()); 

要读取的行

System.out.println( e.getMessage());

这样它就不会退出程序,但是这样做已经添加了该条目,因此在给出适当的错误后,我需要删除已添加的条目。我怎样才能做到这一点?它有某种索引吗?我不知道为什么导师要你这样做,还是我没有捕获要点?

最佳答案

如果在此处调用的 Entry 构造函数中抛出异常:

addressBook.addPerson(new Entry(name, street, town, postcode));

它不会添加到您的列表中。只需保留代码原样并在此处捕获异常即可:

try{
addressBook.addPerson(new Entry(name, street, town, postcode));
catch(Exception e){
//Tell the user what he did wrong and let him reenter
}

关于Java 从 listArray 中删除条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15290574/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com