c# - 如何始终保留集合的 n 个元素?
问题描述
在 c# 中保留集合的 n 个元素的最佳方法是什么?
添加新元素时删除旧元素。
这就是我所做的:
List<int> listOf5Elements = new List<int>();
for(var i = 0; i<200; i++)
{
listOf5Elements.Add(i);
if (listOf5Elements.Count() == 6)
listOf5Elements.RemoveAt(0);
}
LinkedList<int> linkedOf5elements = new LinkedList<int>();
for (var i = 0; i < 200; i++)
{
linkedOf5elements.AddLast(i);
if (linkedOf5elements.Count() == 6)
linkedOf5elements.RemoveFirst();
}
Queue<int> queueOf5Elements = new Queue<int>();
for (var i = 0; i < 200; i++)
{
queueOf5Elements.Enqueue(i);
if (queueOf5Elements.Count() == 6)
queueOf5Elements.Dequeue();
}
还有其他方法吗?
解决方案
推荐阅读
- android - Android使用socket.io将图像作为二进制流发送
- macos - 在 macOS 应用程序中使用 Safari 调试 JavaScriptCore
- botframework - Botbuilder,多个带有直接网络控制的网站。如何管理
- batch-file - 在现有命令提示符中触发命令。使用另一个 .bat 文件
- java - 从json发送日期字段时出现异常
- css - 使用 React Prod Build 重命名类名
- arrays - 如何对mongodb中的项目数组进行操作(过滤和排序)?
- python - 如何通过 SQLAlchemy 中的自定义函数进行排序
- python - ImageMagick:权限被拒绝错误(Windows、Conda)
- javascript - 未处理的承诺的麻烦