| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1188 人关注过本帖
标题:关于ArrayList的问题
只看楼主 加入收藏
hainandgm
Rank: 6Rank: 6
等 级:侠之大者
威 望:3
帖 子:111
专家分:475
注 册:2007-6-21
结帖率:100%
收藏
 问题点数:0 回复次数:9 
关于ArrayList的问题
大家好!
本人第一次使用ArrayList,怎么添加和获取自定义数据类型?
比如:
private stuct mystruct
{
public int i;
public string s;
}

mystruct l;
l.i=i;
l.s="hello;

private ArrayList myArrayList=new ArrayList();
myArrayList.Add(l);

mystruct m=(mystruct)myArrayList[0]; //这句老是提示无效的格式转换,请问如何解决?谢谢!
搜索更多相关主题的帖子: ArrayList mystruct public private 定义 
2008-07-25 11:34
hainandgm
Rank: 6Rank: 6
等 级:侠之大者
威 望:3
帖 子:111
专家分:475
注 册:2007-6-21
收藏
得分:0 
对不起,修正:l.s="hello;为l.s="hello";
2008-07-25 11:36
xyq701830
Rank: 1
来 自:浙江
等 级:新手上路
威 望:2
帖 子:263
专家分:0
注 册:2008-6-24
收藏
得分:0 
看不懂你在写什么了.```什么样的定义都有

菜猪猪``
2008-07-25 12:31
xyq701830
Rank: 1
来 自:浙江
等 级:新手上路
威 望:2
帖 子:263
专家分:0
注 册:2008-6-24
收藏
得分:0 
mystruct m=(mystruct)myArrayList[0];
能这样装换吗.书去好好看看吧

菜猪猪``
2008-07-25 12:31
shmilylee
Rank: 2
来 自:江苏扬州蹩脚小公司
等 级:论坛游民
威 望:2
帖 子:242
专家分:22
注 册:2007-7-6
收藏
得分:0 
我没看出有什么地方不对
特地做了个测试
我在项目里随便找了个类试了一下
DBAccess db = new DBAccess();
        ArrayList al = new ArrayList();
        al.Add(db);
        DBAccess db2 = (DBAccess)al[0];
测试通过啊!
还有,这样做会涉及到数据的装箱,拆箱,数据量大的话影响效率
不妨试试.NET里的泛型
List<mystruct > list = new List<mystruct >();
可以试试看
2008-07-25 14:31
hainandgm
Rank: 6Rank: 6
等 级:侠之大者
威 望:3
帖 子:111
专家分:475
注 册:2007-6-21
收藏
得分:0 
非常感谢各位!
本人也是刚用C#没多久,对里面的一些不是很了解,特别感谢shmilylee朋友,我去学学.NET的泛型.
2008-07-25 14:43
fjfhnui
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2007-6-18
收藏
得分:0 
名字都写错了 struct

[[it] 本帖最后由 fjfhnui 于 2008-7-25 22:16 编辑 [/it]]
2008-07-25 22:10
漏网之雨
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-7-19
收藏
得分:0 
ArrayList类的元素是任何类型的,区别于List<T>ArrayList对象跟List<T>对象的操作方式相同.不同点:
            一:ArrayList的元素是任何类型的.
            二:List<T>的元素类型跟T一致.
            System.Collections.ArrayList myArrayList = new System.Collections.ArrayList(10);
            
            myArrayList.Add(11);
            myArrayList.Add("Hello");
            myArrayList.Add("I ");
            myArrayList.Add('a');
            myArrayList.Remove('a');
            myArrayList.Insert(2,"爱国一点");
            for (int i = 0; i < myArrayList.Count;i++ )
            {
                Console.WriteLine(myArrayList[i]);
            }
            Console.Read();

[[it] 本帖最后由 漏网之雨 于 2008-7-30 00:36 编辑 [/it]]
2008-07-30 00:34
tpriwwq
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2008-7-24
收藏
得分:0 
使用泛型比较好
2008-07-30 13:07
天使不哭
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:677
专家分:22
注 册:2006-7-9
收藏
得分:0 
既然结果出来了就结贴。

C#Winform技术群:25380362
博客:http:///boyliupan/
2008-07-30 13:47
快速回复:关于ArrayList的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020511 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved