社区
C#
帖子详情
C# 几种容器效率哪个最优?
PCCYC
2015-08-29 02:12:18
本人要存储一个结构,要支持快速多种查找,假设如下:
string name;
int age;
object obj;
现在有知道几个方法,不知道用哪个最理想 :
1.建立 一个 class person包涵上面属性 ,使用 lsit<person>。
2.使用DataTable。
3.使用 Dictionary。
暂时只知道这么多,如果有更好的办法希望能告诉我。
谢谢
...全文
1002
8
打赏
收藏
C# 几种容器效率哪个最优?
本人要存储一个结构,要支持快速多种查找,假设如下: string name; int age; object obj; 现在有知道几个方法,不知道用哪个最理想 : 1.建立 一个 class person包涵上面属性 ,使用 lsit。 2.使用DataTable。 3.使用 Dictionary。 暂时只知道这么多,如果有更好的办法希望能告诉我。 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
PCCYC
2015-08-31
打赏
举报
回复
特别谢谢6楼7楼朋友。虽然对于性能还是半懂,但学习了linq的用法,长姿势了。
moonwrite
2015-08-29
打赏
举报
回复
1.建立 一个 class person包涵上面属性 ,使用 lsit<person>。 2.使用DataTable。(这个就不要用了) 3.使用 Dictionary。 List 和Dictionary 是不同的运用场景 如果你没有需要通过Key来查询 就不要用Dictionary了 List +linq 挺好的
郑州高新区WPF小王子
2015-08-29
打赏
举报
回复
List集合, 支持linq 查询,个人感觉比较方便。
xuzuning
2015-08-29
打赏
举报
回复
鞋子是否合脚,要穿了才知道
以专业开发人员为伍
2015-08-29
打赏
举报
回复
是的! 有功夫纠结,不如设计一个接口,然后用三种方式分别实现这个接口(每种实现也就几行代码而已)。
本拉灯
2015-08-29
打赏
举报
回复
如果已确认某个属性且属性值是不重复的那用Dictionary,这最快 否则用List<xxx> 下的Lamada语法记住是用Where 不是用FindAll这两个有区别,前者快多了10万条查旬只有几毫秒。
娃都会打酱油了
2015-08-29
打赏
举报
回复
你都没说你要哪种快去查找方法!
衣舞晨风
2015-08-29
打赏
举报
回复
自己实测啊
C#
框架提供的
几种
数据结构对单值查找的
效率
比较
做分词组件时,有网友提出采用Hashtable 数据结构查找字符串
效率
较低,建议改为Dictionary,其理由是采用Hashtable 时Key值是object 会触发装箱和拆箱动作,一直对这种说法表示怀疑,因为我理解只有值类型和引用类型通过object 互转时才会发生装箱和查询,引用类型之间强制转换不应发生装箱和拆箱,而Dictionary 泛型实际上底层还是调用的Hashtable,所以
效率
...
Java、Python、C/C++、
C#
、PHP性能与应用场景全解析
编程语言是软件开发的基石,其核心差异源于编译与解释机制、内存管理方式和类型系统设计。编译型语言如C/C++将源代码直接转换为机器码,执行
效率
最高,适合系统底层开发;而解释型语言如Python通过解释器逐行执行,牺牲性能换取开发灵活性。内存管理方面,手动管理(C/C++)提供极致控制但易出错,自动垃圾回收(Java、
C#
)则提升开发安全性与
效率
。类型系统在静态(编译时检查)与动态(运行时绑定)间权衡,影响错误发现时机与代码维护成本。这些特性共同决定了语言的技术价值:高性能计算、快速迭代开发或高并发处理。在应用
C#
WPF与Unity3D集成开发:HID传感器数据三维姿态监控上位机实战
在工业监控与仿真领域,实时数据采集与三维可视化是核心技术需求。通过USB HID协议,可以免驱、标准化地连接各类传感器硬件,高效获取原始数据。
C#
与WPF框架凭借其强大的.NET生态和MVVM模式,为构建稳定、美观的桌面监控界面提供了坚实基础。结合专业的Unity3D引擎进行三维渲染,能够将解析后的姿态数据(如欧拉角)实时驱动虚拟模型,实现高保真的空间运动可视化。这种 **
C#
WPF + Unity3D** 的混合架构,尤其适用于需要将硬件通信、数据处理与三维展示深度融合的应用场景,例如本文详述的六轴传感
数据流中的中位数
题目描述 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。由于数据是从一个数据流中读出来,因而数据的数目随着时间的增加而增加,如果用一个数据
容器
来保存从流中读出来的数据,则当新的数据从流中读出来的时候,这些数据就插入数据
容器
。这个数据用什么数据结构...
客户端开发如何做到多平台统一
实现客户端多平台统一开发,核心目标是提升
效率
、保证体验一致性并控制成本。目前主要通过选择合适的和配套的来实现。下面这个表格汇总了
几种
主流技术路径的特点,方便你快速了解。
C#
111,129
社区成员
642,536
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章