我正在尝试让用户输入指定应从列表中删除的索引。
他们在对象上获得一个带有ID的列表,然后输入他们不想删除的对象的ID。书面ID从1开始,但实际上是0;所以当用户输入1时,它将被更改为0.
我也是这样做的,所以他们不能选择索引范围之外的输入。我让它工作了一段时间,但后来我想不允许用户输入空白,这就是我的代码出错了。
在我开始编辑它之前,我已将其恢复到了一定程度,但我似乎无法找到错误的内容!
public static void menuLISTA()
{
menuTEXT.WriteFullLine("-Din Digitalgarderobs innehåll-");
Console.WriteLine("===============================================================");
if (newklädDataList.Count == 0)
{
Console.WriteLine();
Console.WriteLine("Din digitalgarderob är tom!");
Console.WriteLine();
Console.WriteLine("===============================================================");
Console.WriteLine("Tryck [Enter] för att fortsätta."); Console.ReadKey();
}
else if (newklädDataList.Count != 0)
{
for (int i = 0; i < newklädDataList.Count; i++)
{
klädDATALIST plagg = newklädDataList[i];
Console.WriteLine("ID: {4}\tMärke: {0}\tTyp: {1}\tFärg: {2}\tStorlek: {3}", plagg.märke, plagg.typ, plagg.färg, plagg.storlek, i + 1);
}
Console.WriteLine("===============================================================");
Console.WriteLine("Vill du ta bort ett klädesplagg? - Ange siffra -");
string input = Console.ReadLine();
int svar = int.Parse(input);
int svarID = svar - 1;
if (svar != 0 && svar < newklädDataList.Count)
{
newklädDataList.RemoveAt(svarID);
}
else if (svar == 0)
{
Console.WriteLine("\nVänligen ange ett giltigt plagg-ID. Tryck [Enter] för att fortsätta.");
Console.ReadKey();
Console.Clear();
menuLISTA();
}
else
{
Console.WriteLine("\nVänligen ange ett giltigt plagg-ID. Tryck [Enter] för att fortsätta.");
Console.ReadKey();
Console.Clear();
menuLISTA();
}
}
Console.Clear();
menuTITEL.menuKläd();
}
答案 0 :(得分:0)
我解决了!
else if (newklädDataList.Count != 0)
{
for (int i = 0; i < newklädDataList.Count; i++)
{
klädDATALIST plagg = newklädDataList[i];
Console.WriteLine("ID: {4}\tMärke: {0}\tTyp: {1}\tFärg: {2}\tStorlek: {3}", plagg.märke, plagg.typ, plagg.färg, plagg.storlek, i + 1);
}
Console.WriteLine("===============================================================");
Console.WriteLine("Vill du ta bort ett klädesplagg? - Ange siffra -");
string input = Console.ReadLine();
int svar = int.Parse(input);
int svarID = svar - 1;
if (svarID == 0 || svar < newklädDataList.Count+1)
{
newklädDataList.RemoveAt(svarID);
Console.ReadKey();
Console.Clear();
menuLISTA();
}
else if (svar == 0)
{
Console.WriteLine("\nVänligen ange ett giltigt plagg-ID. Tryck [Enter] för att fortsätta.");
Console.ReadKey();
Console.Clear();
menuLISTA();
}
else
{
Console.WriteLine("\nVänligen ange ett giltigt plagg-ID. Tryck [Enter] för att fortsätta.");
Console.ReadKey();
Console.Clear();
menuLISTA();
}
}
Console.Clear();
menuTITEL.menuKläd();