如何在List<;int>;并移除其中一个
本文关键字:一个 List lt int gt | 更新日期: 2023-09-27 18:13:46
初学者;新手级别的问题。这是一个生成30个随机数的代码,按升序对它们进行排序,然后按降序对它们进行排列。最后一个目标是在列表中找到重复项并删除其中一个(例如,如果有两个27,我想删除一个并保留另一个(。
static void Main(string[] args)
{
Random randomNum = new Random();
List<int> numbers = new List<int>();
for (int i = 0; i < 30; i += 1)
numbers.Add(randomNum.Next(1, 100));
Console.Write("List of random numbers:");
foreach (var number in numbers)
Console.Write(" {0} ", number);
var sorted =
from number in numbers
orderby number
select number;
Console.WriteLine();
Console.Write("List in ascending order:");
foreach (var element in sorted)
Console.Write(" {0} ", element);
var sortdescending =
from number in numbers
orderby number descending
select number;
Console.WriteLine();
Console.Write("List in descending order:");
foreach (var element in sortdescending)
Console.Write(" {0} ", element);
int
是内置类型的,那么您可以使用简单的:
numbers = numbers.Distinct();
但是如果您有类,则可以重写两个方法:Equals和GetHashCode
不要忘记使用
using System.Linq;
然后(正如康拉德所说(
var distinctNumbers = numbers.Distinct();