我正在尝试编写我的程序,以便在输入的数组隔间被占用时,它会告诉用户哪些隔间是空的。但是,我不知道如何更改代码以使其停止循环但显示相同的内容。这是我的代码:
for (int i = 0; i < compartmentno.Length; i++)
{
if (compartmentno[i] == 0)
{
MessageBox.Show("Available compartments are" + (i + 1).ToString());
}
}
如何让程序只显示一个包含所有可用隔间的消息框,而不是显示 10 个消息框?在此先感谢您的帮助!
最佳答案
您可以为此使用 LINQ:
int availableCompartments = compartmentno.Count(x=> x == 0);
MessageBox.Show("Available compartments are:" + availableCompartments.ToString());
这是公寓号码:
public static void Main()
{
int [] compartmentNo = { 1,3,5,6,7,8,9,0,4,0};
var availableCompartments = compartmentNo
.Select((value, index) => new {index, value})
.Where(x=> x.value == 0)
.Select(x=>x.index);
int Count = availableCompartments.Count();
string Values = String.Join(",",availableCompartments);
Console.WriteLine(String.Format("No of Aparments : {0} and aprtments No : {1}",Count,Values));
}
关于c# - 我如何更改此代码以使其停止循环但显示相同的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27009031/