社区
C#
帖子详情
关于集合的类型
jcyluck
2012-10-08 11:42:46
WINFORM程序,我要建立一个这样的集合,第一列KEY值(STRING 类型),第二列STRING 类型,第三列 OBJECT类型,第四列STRING类型,用什么方法来构造这样的集合比较好?当然需要系统开销小的,求教!!
...全文
302
12
打赏
收藏
关于集合的类型
WINFORM程序,我要建立一个这样的集合,第一列KEY值(STRING 类型),第二列STRING 类型,第三列 OBJECT类型,第四列STRING类型,用什么方法来构造这样的集合比较好?当然需要系统开销小的,求教!!
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
全栈极简
2012-10-09
打赏
举报
回复
多于多列的,还是用datatable吧。
zhanglong19891129
2012-10-09
打赏
举报
回复
4.0才有tuple 吧
jcyluck
2012-10-09
打赏
举报
回复
顶一个,期待更好的方案。。。
超人会飞
2012-10-09
打赏
举报
回复
Dictionary<string, Tuple<string, object, string>>
enaking
2012-10-09
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
用一个struct吧,
struct my1
{
public string m_strFirstColumn;
public string m_strSecondColumn;
public object m_rThirdColumn;
public string m_str4;
}
Dictionary<string,my1> a=new Diction……
[/Quote]
正解
wanghui0380
2012-10-09
打赏
举报
回复
datatable中可以存储 OBJECT类型吗? 没有问题。datatable是仿数据库实现,相当与一个内存数据库
还是那句话如果是数据库你要放object会怎么办?要么二进制流,要么序列化xml,要么干脆拆成另一张关联表。
ok。
二进制流--》object二进制序列和反序列可以
序列化xml--》这个也不必多说
datatable关联表--》ado.net允许滴,自己看msdn的 datatset里多个datatable关联表
-----------------------------------------------------------------------
list<T> 如果T不是类或是结构类型,允许多列的存在吗
如果T不是类或结构类型??这话说滴,net里还存在除了 引用类型 或 值类型以外的其他类型吗??
jcyluck
2012-10-09
打赏
举报
回复
[Quote=引用 3 楼 的回复:]
我滴个脑子啊
对于winform,datatable其实可以,只是如果非要矫情啥开销,那么Dictionary<string,object> list<object>均可
变通,变通,还是变通!object 是对象,对象可以有任意属性,包括ls的Dictionary<string, Tuple<string, object, string>>仍然还是Dictionary<string,ob……
[/Quote]
datatable中可以存储 OBJECT类型吗?
list<T> 如果T不是类或是结构类型,允许多列的存在吗?
jcyluck
2012-10-09
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
用一个struct吧,
struct my1
{
public string m_strFirstColumn;
public string m_strSecondColumn;
public object m_rThirdColumn;
public string m_str4;
}
Dictionary<string,my1> a=new Diction……
[/Quote]
我原来在一些小型的集合中是用类来构造的,和你使用结构的方法一致,但现在这个集合会变得很大,所以就要考虑一下性能的问题,是用类好呢,还是用结构好呢?有没有更简单,更快的方法?
jcyluck
2012-10-09
打赏
举报
回复
[Quote=引用 1 楼 的回复:]
Dictionary<string, Tuple<string, object, string>>
[/Quote]
高手啊,我还不知道这个 Tuple 的存在!!!
wanghui0380
2012-10-09
打赏
举报
回复
我滴个脑子啊
对于winform,datatable其实可以,只是如果非要矫情啥开销,那么Dictionary<string,object> list<object>均可
变通,变通,还是变通!object 是对象,对象可以有任意属性,包括ls的Dictionary<string, Tuple<string, object, string>>仍然还是Dictionary<string,object>的变体
所以如果你想要有唯一key,使用Dictionary<string,object> 和datatable都可以
如果不想唯一key,则使用datatable或者list <object>
当然,使用Dictionary<string,object>、Dictionary<string, Tuple<string, object, string>> 相对来说绑定麻烦点,个人还是推荐list<T>或datatable,绑定容易操作
ps:别看博客园那些没啥根据的水文,datatable其实并没有啥非常不能忍受的性能开销。
stonespace
2012-10-09
打赏
举报
回复
用一个struct吧,
struct my1
{
public string m_strFirstColumn;
public string m_strSecondColumn;
public object m_rThirdColumn;
public string m_str4;
}
Dictionary<string,my1> a=new Dictionary<string,my1>();
不过这样第一列会有冗余,也可以在my1中去掉m_strFirstColumn,
threenewbee
2012-10-09
打赏
举报
回复
Dictionary<string, Tuple<string, object, string>>
oracle
集合
类型
详解
1.
集合
类型
1.1关联数组1.2嵌套表1.3 可变长的数组2.声明
集合
类型
2.1声明关联数组2.2声明嵌套表2.3声明VARRAY3.
集合
变量的声明和初始化3.1
集合
变量的声明3.2
集合
变量的初始化3.2.1通过构造函数的显示初始化3.2.2直接赋值时的隐式初始化3.2.3通过FETCH操作的隐式初始化3.2.4通过BULK COLLECT语句的隐式初始4.
集合
方法5.
集合
类型
对比6.
集合
示例6...
python的
集合
类型
_python
集合
类型
集合
类型
简介
集合
也是容器,其内元素都是无序、唯一、不可变的。它常用来做成员测试、移除重复数据、数据计算(比如交集、并集、差集)。
集合
Set是dict的无value版。
集合
也使用大括号包围:>>> s = {'a','b','c'}>>> type(s)Set中的元素和dict一样也是通过hash值来存储的:将元素hash()得到hash值,存储到Set中。所以,...
集合
类型
集合
类型
前面几章里,我们学习了四种基本数据
类型
,两种简单的自定义
类型
。这一章,我们学习一种自定义结构
类型
:
集合
类型
。
集合
在数学中较常见,是若干个同
类型
数据的全部。在TURBO PASCAL中,
集合
的意义和数学中比较类似,但是为了编译的效率起见,TURBO PASCAL限制了
集合
的数量不能无限制的大,必须有一个范围。 一、
集合
的定义 在PASCAL中,我们把有限个同
Swift
集合
类型
Swift 语言提供数组(Array)、
集合
(Set)和字典(Dictionary)三种基本的
集合
类型
用来存储
集合
数据。数组是有序数据的集。
集合
是无序无重复数据的集。字典是无序的键值对的集。Swift 中的数组、
集合
和字典必须明确其中保存的键和值
类型
,这样就可以避免插入一个错误数据
类型
的值。同理,对于获取到的值你也可以放心,其数据
类型
是确定的。注意:Swift 的数组、
集合
和字典
类型
被实现为泛型
集合
。
复合
类型
:序列
类型
、映射
类型
和
集合
类型
总结
类型
可变性有序性元素唯一性索引访问切片支持定义方式典型用途列表可变有序不唯一访问支持[1, 2, 3]存储可变数据序列元组不可变有序不唯一访问支持(1, 2, 3)存储不可变数据序列字符串不可变有序不唯一访问支持"hello"处理文本数据字典可变无序键唯一键访问不支持存储键值对
集合
可变无序唯一不可访问不支持{1, 2, 3}去重或
集合
运算固定
集合
不可变无序唯一不可访问不支持不可变的
集合
运算。
C#
111,128
社区成员
642,533
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章