如何在二维数组中找到 indexOf 元素?
How to find indexOf element in two-dimensional arrays?
我是 C# 的初学者,所以我不确定我使用的是不是二维数组。但无论如何它是字符串数组的列表。
List<string[]> cars = new List<string[]>();
我想知道如何使用 IndexOf 方法 如果我想调用特定索引并显示其中的数组元素?例如,我的三个文本框将以下数据设置为每个索引的 3 个元素:
车名="Audi"
型号="A3"
颜色="black"
private void button1_Click(object sender, EventArgs e)
{
cars.Add(new string[3]);
cars[cars.Count-1][0] = textBox1.Text;
cars[cars.Count-1][1] = textBox2.Text;
cars[cars.Count-1][2] = textBox3.Text;
}
因此,如果我在另一个文本框中键入任何汽车的名称(BMW、AUDI、FORD),所有相关信息(型号和颜色)都应该打印在标签上。我认为 IndexOf 方法是我在这种情况下所需要的,但我将如何针对我使用的集合类型实现它?
您在这里使用了错误的数据结构。您需要一个具有三个属性的 class,然后您可以获得一个 Cars
列表而不是 string
数组,并使用 LINQ 按特定 属性 进行搜索。
public class Car
{
public string Brand { get; set; }
public string Model { get; set; }
public string Color { get; set; }
}
var cars = new List<Car>();
cars.Add(new Car { Name = textBox1.Text, Color = textBox2.Text, Model = textBox3.Text });
按特定 Brand
搜索汽车:
var car = cars.FirstOrDefault(c => c.Brand == "BMW")
如果存在,FirstOrDefault
将 return 第一辆符合条件的汽车,否则,它将 return 为空。
注意:为控件指定有意义的名称是一种很好的做法。例如:使用TxtBrand
、TxtModel
、TxtColor
等。这样代码会更易读。
我是 C# 的初学者,所以我不确定我使用的是不是二维数组。但无论如何它是字符串数组的列表。
List<string[]> cars = new List<string[]>();
我想知道如何使用 IndexOf 方法 如果我想调用特定索引并显示其中的数组元素?例如,我的三个文本框将以下数据设置为每个索引的 3 个元素:
车名="Audi"
型号="A3"
颜色="black"
private void button1_Click(object sender, EventArgs e)
{
cars.Add(new string[3]);
cars[cars.Count-1][0] = textBox1.Text;
cars[cars.Count-1][1] = textBox2.Text;
cars[cars.Count-1][2] = textBox3.Text;
}
因此,如果我在另一个文本框中键入任何汽车的名称(BMW、AUDI、FORD),所有相关信息(型号和颜色)都应该打印在标签上。我认为 IndexOf 方法是我在这种情况下所需要的,但我将如何针对我使用的集合类型实现它?
您在这里使用了错误的数据结构。您需要一个具有三个属性的 class,然后您可以获得一个 Cars
列表而不是 string
数组,并使用 LINQ 按特定 属性 进行搜索。
public class Car
{
public string Brand { get; set; }
public string Model { get; set; }
public string Color { get; set; }
}
var cars = new List<Car>();
cars.Add(new Car { Name = textBox1.Text, Color = textBox2.Text, Model = textBox3.Text });
按特定 Brand
搜索汽车:
var car = cars.FirstOrDefault(c => c.Brand == "BMW")
如果存在,FirstOrDefault
将 return 第一辆符合条件的汽车,否则,它将 return 为空。
注意:为控件指定有意义的名称是一种很好的做法。例如:使用TxtBrand
、TxtModel
、TxtColor
等。这样代码会更易读。