【发布时间】:2020-08-14 15:55:44
【问题描述】:
为什么控制台窗口不垂直而不是水平打印数组内容? 有办法改变吗? 如何使用 Console.WriteLine() 水平而不是垂直显示数组的内容?
C#
ArrayList tryArray = new ArrayList();
for (int i = 1; i <= 2; i++)
{
// ASKING FOR THE USER TO ENTER DETAILS
Console.WriteLine("Please enter information for customer: " + i);
Console.WriteLine("Please enter your customer name");
cusName = Console.ReadLine();
tryArray.Add(cusName);
Console.WriteLine("Please enter your customer id");
cusID = Console.ReadLine();
tryArray.Add(cusID);
Console.WriteLine("No of months for membership ? (Range 1-120)");
memMonths = Convert.ToInt32(Console.ReadLine());
tryArray.Add(memMonths.ToString());
}
Console.WriteLine("{0,-20} {1,10} {2,10}}", "Customer Name","Customer ID", "Months");
for (int j = 0; j < tryArray.Count; j++)
{
Console.WriteLine("{0,-10} {1,5} {2,5}", tryArray[j], tryArray[j], tryArray[j]);
}
**//code print like this right now
Customer Name Customer ID Months
a1 a1 a1
a1234567 a1234567 a1234567
12 12 12
a2 a2 a2
a2234567 a2234567 a2234567
15 15 15
//Result I want
Customer Name Customer ID Months
a1 a1234567 12
a2 a2234567 15**
【问题讨论】:
-
您对一行中的所有值使用相同的索引“tryArray[j]”。因此,如果该值是“a1”,则它会显示 3 次。你能展示一下数据的结构吗?
-
for (int j = 0; j < tryArray.Count - 2; j++) { Console.WriteLine("{0,-10} {1,5} {2,5}", tryArray[j], tryArray[j + 1], tryArray[j + 2]); } -
可以改进数据的组织。你现在有一个像
{ name1, cusid1, memMonths1, name2, cusid2, memMonths2, . . . }这样的数组。例如,有一个包含 Name、CusID 和 MemMonths 的结构或类来结构化存储。
标签: c# .net arraylist console-application