ArrayList的用法分析
2005-10-20 09:50
316 查看
ArrayList有个Remove方法,定义如下:
示例
ArrayList arr = new ArrayList();
string aaa = "我不知道啊";
string bbb = "你说那?";
string ccc = "晕";
TextBox tb = new TextBox();
tb.Text = "确定";
arr.Add( aaa );
arr.Add( bbb );
arr.Add( ccc );
arr.Add( tb );
Response.Write("删除之前的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
arr.Remove( bbb );
Response.Write("删除之后的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
执行结果如下:
删除之前的成员结构如下:
我不知道啊
你说那?
晕
System.Web.UI.WebControls.TextBox
删除之后的成员结构如下:
我不知道啊
晕
System.Web.UI.WebControls.TextBox
那么如果执行ArrayList.Remove(i)会出现什么结果那?
ArrayList arr = new ArrayList();
string aaa = "我不知道啊";
string bbb = "你说那?";
string ccc = "晕";
TextBox tb = new TextBox();
tb.Text = "确定";
arr.Add( aaa );
arr.Add( bbb );
arr.Add( ccc );
arr.Add( tb );
Response.Write("删除之前的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
arr.Remove( 2 );
Response.Write("删除之后的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
执行结果如下:
删除之前的成员结构如下:
我不知道啊
你说那?
晕
System.Web.UI.WebControls.TextBox
删除之后的成员结构如下:
我不知道啊
你说那?
晕
System.Web.UI.WebControls.TextBox
可以发现,元素并没有被删除,因为找不到 2 这个对象 , 也没有抛出异常
[问] 那么也就是说我没有办法直接删除第n个元素?
[问] 那么也就是说我没有办法直接删除第n个元素?[答] 当然不是了,用下面的代码就可以了
ArrayList arr = new ArrayList();
string aaa = "我不知道啊";
string bbb = "你说那?";
string ccc = "晕";
TextBox tb = new TextBox();
tb.Text = "确定";
arr.Add( aaa );
arr.Add( bbb );
arr.Add( ccc );
arr.Add( tb );
Response.Write("删除之前的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
arr.Remove( arr[2] );
Response.Write("删除之后的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
执行结果如下:
删除之前的成员结构如下:
我不知道啊
你说那?
晕
System.Web.UI.WebControls.TextBox
删除之后的成员结构如下:
我不知道啊
你说那?
System.Web.UI.WebControls.TextBox
可以看到,第三个元素已经被移除了
找了一下msdn,发现还有一个更简单的根据索引移除元素的方法:
ArrayList arr = new ArrayList();
string aaa = "我不知道啊";
string bbb = "你说那?";
string ccc = "晕";
TextBox tb = new TextBox();
tb.Text = "确定";
arr.Add( aaa );
arr.Add( bbb );
arr.Add( ccc );
arr.Add( tb );
Response.Write("删除之前的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
arr.RemoveAt( 2 );
Response.Write("删除之后的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
执行结果如下:
删除之前的成员结构如下:
我不知道啊
你说那?
晕
System.Web.UI.WebControls.TextBox
删除之后的成员结构如下:
我不知道啊
你说那?
System.Web.UI.WebControls.TextBox
可以发现,第3个元素已经被移除了
[C#] public virtual void Remove( objectobj );
参数
obj 要从 ArrayList 移除的 Object。该值可以为空引用(Visual Basic 中为 Nothing)。
示例
ArrayList arr = new ArrayList();
string aaa = "我不知道啊";
string bbb = "你说那?";
string ccc = "晕";
TextBox tb = new TextBox();
tb.Text = "确定";
arr.Add( aaa );
arr.Add( bbb );
arr.Add( ccc );
arr.Add( tb );
Response.Write("删除之前的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
arr.Remove( bbb );
Response.Write("删除之后的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
执行结果如下:
删除之前的成员结构如下:
我不知道啊
你说那?
晕
System.Web.UI.WebControls.TextBox
删除之后的成员结构如下:
我不知道啊
晕
System.Web.UI.WebControls.TextBox
那么如果执行ArrayList.Remove(i)会出现什么结果那?
ArrayList arr = new ArrayList();
string aaa = "我不知道啊";
string bbb = "你说那?";
string ccc = "晕";
TextBox tb = new TextBox();
tb.Text = "确定";
arr.Add( aaa );
arr.Add( bbb );
arr.Add( ccc );
arr.Add( tb );
Response.Write("删除之前的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
arr.Remove( 2 );
Response.Write("删除之后的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
执行结果如下:
删除之前的成员结构如下:
我不知道啊
你说那?
晕
System.Web.UI.WebControls.TextBox
删除之后的成员结构如下:
我不知道啊
你说那?
晕
System.Web.UI.WebControls.TextBox
可以发现,元素并没有被删除,因为找不到 2 这个对象 , 也没有抛出异常
[问] 那么也就是说我没有办法直接删除第n个元素?
[问] 那么也就是说我没有办法直接删除第n个元素?[答] 当然不是了,用下面的代码就可以了
ArrayList arr = new ArrayList();
string aaa = "我不知道啊";
string bbb = "你说那?";
string ccc = "晕";
TextBox tb = new TextBox();
tb.Text = "确定";
arr.Add( aaa );
arr.Add( bbb );
arr.Add( ccc );
arr.Add( tb );
Response.Write("删除之前的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
arr.Remove( arr[2] );
Response.Write("删除之后的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
执行结果如下:
删除之前的成员结构如下:
我不知道啊
你说那?
晕
System.Web.UI.WebControls.TextBox
删除之后的成员结构如下:
我不知道啊
你说那?
System.Web.UI.WebControls.TextBox
可以看到,第三个元素已经被移除了
找了一下msdn,发现还有一个更简单的根据索引移除元素的方法:
ArrayList arr = new ArrayList();
string aaa = "我不知道啊";
string bbb = "你说那?";
string ccc = "晕";
TextBox tb = new TextBox();
tb.Text = "确定";
arr.Add( aaa );
arr.Add( bbb );
arr.Add( ccc );
arr.Add( tb );
Response.Write("删除之前的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
arr.RemoveAt( 2 );
Response.Write("删除之后的成员结构如下:<br>");
for( int i = 0 ; i < arr.Count ; i++ )
{
Response.Write( arr[i].ToString() + "<br>" );
}
执行结果如下:
删除之前的成员结构如下:
我不知道啊
你说那?
晕
System.Web.UI.WebControls.TextBox
删除之后的成员结构如下:
我不知道啊
你说那?
System.Web.UI.WebControls.TextBox
可以发现,第3个元素已经被移除了
相关文章推荐
- C#中Arraylist的sort函数用法实例分析
- ArrayList用法详解与源码分析
- ArrayList用法详解与源码分析
- ArrayList 源码分析
- Oracle分析函数 OVER(PARTITION ORDER WINDOWING)(二)—— 类聚合函数用法
- Angular2管道Pipe及自定义管道格式数据用法实例分析
- MapPtrToProcess 用法 WINCE驱动分析3 转
- C#中的事务用法实例分析
- Thinking in Java之ArrayList、Vector比较分析
- Zend Framework动作助手Json用法实例分析
- ArrayList源码分析(jdk1.8)
- 超详细mysql left join,right join,inner join用法分析
- Java容器类List、ArrayList、Vector及map、HashTable、HashMap的区别与用法
- NET中Cache用法分析
- ArrayList.toArray()的用法
- Python实现程序的单一实例用法分析
- php类中的各种拦截器用法分析
- ffmpeg中av_interleaved_write_frame函数的源码分析及其用法
- ArrayList Vector LinkedList HasMap等区别与用法
- oracle分析函数的另类用法