添加联系人到列表
本文关键字:列表 联系人 添加 | 更新日期: 2023-09-27 18:16:09
我有一个添加联系人(姓名和号码)到列表并稍后显示它的小问题声明。在添加过程中,我选择了以下方法,它在添加之前检查用户是否添加了正确的数字格式。如果添加了错误的数字格式,代码将要求他从头输入详细信息。我的问题是,如果用户添加了错误的输入,他必须只退一步,即回到添加数字,而不是从一开始。基本上我如何将下面的方法分成两个并使用它们。在这里,我在一个单独的类采取接触。我是c#的初学者。如果有错误,请忽略。Thanks a ton
public void AddingContact()
{
Contact addContact = new Contact();
Console.WriteLine("Enter the name to be added:");
addContact.Name = Console.ReadLine();
Console.WriteLine("Enter the phone number to be added:");
string NewNumber = Console.ReadLine();
if(//So and so condition is true)
{
Add contact to list<contacts>
}
else
{
AddingContact();
}
}
循环字段直到获得有效输入的最简单方法是使用do-while
块。
public void AddingContact()
{
Contact addContact = new Contact();
Console.WriteLine("Enter the name to be added:");
addContact.Name = Console.ReadLine();
string NewNumber;
do
{
NewNumber = Console.ReadLine();
if (!IsValidPhoneNumber(NewNumber))
{
NewNumber = string.Empty;
}
} while (string.IsNullOrEmpty(NewNumber));
Contact.PhoneNumber = NewNumber; // Or whatever the phone number field is
ContactList.Add(Contact); // Or whatever the contact list is
}
验证电话号码的方法可以写成:
public bool IsValidPhoneNumber(string number)
{
return Regex.Matches(number, "^''(?([0-9]{3})'')?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$").Count == 1;
}
创建函数验证输入的返回bool值的数字
bool isValidNumber = true;
do{
Console.WriteLine("Enter the phone number to be added:");
string NewNumber = Console.ReadLine();
isValidNumber = isValidNumberCheck(NewNumber);
}while(!isValidNumber);