在C#中,有多種方法可以在集合(如List、Dictionary等)中查找特定元素。以下是一些常見的方法:
Find
方法(僅適用于List):List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
int target = 3;
int index = numbers.Find(n => n == target);
if (index != -1)
{
Console.WriteLine($"元素 {target} 在列表中的索引為:{index}");
}
else
{
Console.WriteLine($"元素 {target} 不在列表中");
}
FirstOrDefault
方法(適用于List和Dictionary):List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
int target = 3;
int? index = numbers.FirstOrDefault(n => n == target);
if (index.HasValue)
{
Console.WriteLine($"元素 {target} 在列表中的索引為:{index.Value}");
}
else
{
Console.WriteLine($"元素 {target} 不在列表中");
}
IndexOf
方法(僅適用于List):List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
int target = 3;
int index = numbers.IndexOf(target);
if (index != -1)
{
Console.WriteLine($"元素 {target} 在列表中的索引為:{index}");
}
else
{
Console.WriteLine($"元素 {target} 不在列表中");
}
TryGetValue
方法(僅適用于Dictionary):Dictionary<string, int> numbers = new Dictionary<string, int> { { "one", 1 }, { "two", 2 }, { "three", 3 }, { "four", 4 }, { "five", 5 } };
string targetKey = "three";
if (numbers.TryGetValue(targetKey, out int targetValue))
{
Console.WriteLine($"元素 {targetKey} 對應的值為:{targetValue}");
}
else
{
Console.WriteLine($"元素 {targetKey} 不在字典中");
}
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
int target = 3;
int index = numbers.FirstOrDefault(n => n == target);
if (index != -1)
{
Console.WriteLine($"元素 {target} 在列表中的索引為:{index}");
}
else
{
Console.WriteLine($"元素 {target} 不在列表中");
}
這些方法可以根據您的需求和集合類型選擇使用。