【发布时间】:2016-05-23 22:08:20
【问题描述】:
我正在尝试让用户输入指定应从列表中删除的索引。
他们会得到一个包含对象 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();
}
【问题讨论】:
标签: if-statement input while-loop