C# 如何在2d数组中获得多个输入,以保存和输出用户信息 static void Main2(字符串[]args) { 字符串[,]项=新字符串[2,2]; 对于(int i=0;i
如何在二维数组中获取多个输入,以保存和输出用户信息 如果您想使用数组保存用户的答案,那么这可能会有帮助:C# 如何在2d数组中获得多个输入,以保存和输出用户信息 static void Main2(字符串[]args) { 字符串[,]项=新字符串[2,2]; 对于(int i=0;i,c#,arrays,2d,C#,Arrays,2d,如何在二维数组中获取多个输入,以保存和输出用户信息 如果您想使用数组保存用户的答案,那么这可能会有帮助: static void Main2(string[] args) { string[,] items = new string[2, 2]; for (int i = 0; i < 2; i++) { for (int j = 0; j < 2; j++) { Console.WriteLine("
static void Main2(string[] args)
{
string[,] items = new string[2, 2];
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 2; j++)
{
Console.WriteLine("Enter Item Name:");
Console.WriteLine("Enter Item Price:");
Console.WriteLine("Enter Item Quantity:");
items[i, j] = Convert.ToString(Console.ReadLine());
}
}
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 2; j++)
{
Console.WriteLine("Item Name: " + items[i, j]);
Console.WriteLine();
Console.WriteLine("Item Price: " + items[i, j]);
Console.WriteLine();
Console.WriteLine("Item Quantity: " + items[i, j]);
Console.WriteLine();
}
Console.ReadLine();
}
}
string[,]items=新字符串[2,3];
对于(int i=0;i<2;i++)
{
Console.WriteLine(“输入项目名称:”);
items[i,0]=Console.ReadLine();
Console.WriteLine(“输入项目价格:”);
items[i,1]=Console.ReadLine();
Console.WriteLine(“输入项目数量:”);
items[i,2]=Console.ReadLine();
}
对于(int i=0;i<2;i++)
{
Console.WriteLine(“项目名称:+项目[i,0]);
Console.WriteLine(“项目价格:+项目[i,1]);
控制台写入线(“项目数量:+项目[i,2]);
}
Console.ReadLine();
最可读的方法可能是创建一个简单的类来存储数据,然后将这些类的集合存储在列表中。您可以重写类上的ToString
方法,并且可以创建一个简单的包装器,用于从用户处获取强类型数据(对于Price
和Quantity
,我们希望他们只输入数字):
现在有几个包装器提示用户输入并获得强类型结果:
public class Item
{
public string Name { get; set; }
public decimal Price { get; set; }
public int Quantity { get; set; }
public override string ToString()
{
return $"Name: {Name}, Price: {Price:C}, Quantity: {Quantity}";
}
}
然后,我们可以在一个循环中从用户处获得两个项目:
private static int GetIntFromUser(string prompt)
{
int result;
do
{
Console.Write(prompt);
} while (!int.TryParse(Console.ReadLine(), out result));
return result;
}
private static decimal GetDecimalFromUser(string prompt)
{
decimal result;
do
{
Console.Write(prompt);
} while (!decimal.TryParse(Console.ReadLine(), out result));
return result;
}
private static string GetInputFromUser(string prompt)
{
Console.Write(prompt);
return Console.ReadLine();
}
static void Main(字符串[]args)
{
var items=新列表();
对于(变量i=0;i<2;i++)
{
var itemNumber=$“Item{i+1}”;
var项目=新项目
{
Name=GetInputFromUser($”输入{itemNumber}名称:”),
Price=GetDecimalFromUser($“输入{itemNumber}价格:”),
数量=GetIntFromUser($”输入{itemNumber}数量:)
};
项目。添加(项目);
}
foreach(项目中的var项目)
{
控制台写入线(项目);
}
}
提示输入名称、价格和数量,然后只向用户收集一件物品。请注意,管理大量相关数据位的一种更明智的方法是使用一个类,然后使用一个集合来存储其中的许多位;和Console.WriteLine();单独的类?将用户提示放在另一个类中?
private static int GetIntFromUser(string prompt)
{
int result;
do
{
Console.Write(prompt);
} while (!int.TryParse(Console.ReadLine(), out result));
return result;
}
private static decimal GetDecimalFromUser(string prompt)
{
decimal result;
do
{
Console.Write(prompt);
} while (!decimal.TryParse(Console.ReadLine(), out result));
return result;
}
private static string GetInputFromUser(string prompt)
{
Console.Write(prompt);
return Console.ReadLine();
}
static void Main(string[] args)
{
var items = new List<Item>();
for (var i = 0; i < 2; i++)
{
var itemNumber = $"Item #{i + 1}";
var item = new Item
{
Name = GetInputFromUser($"Enter {itemNumber} Name: "),
Price = GetDecimalFromUser($"Enter {itemNumber} price: "),
Quantity = GetIntFromUser($"Enter {itemNumber} Quantity: ")
};
items.Add(item);
}
foreach (var item in items)
{
Console.WriteLine(item);
}
}