一个强类型ArrayList类。

原创 2007年09月13日 23:54:00
class StringBase : CollectionBase
    
...{
        
public string this[int index]
        
...{
            
get ...return ((string)List[index]); }
            
set ...{ List[index] = value; }
        }

        
public int Add(string value)
        
...{
            
return (List.Add(value));
        }

        
public int IndexOf(string value)
        
...{
            
return (List.IndexOf(value));
        }

        
public void Insert(int index, string value)
        
...{
            List.Insert(index, value);
        }

        
public void Remove(string value)
        
...{
            List.Remove(value);
        }

        
public bool Contains(string value)
        
...{
            
return (List.Contains(value));
        }

        
protected override void OnInsert(int index, object value)
        
...{
            
if (value.GetType() != Type.GetType("System.String"))
                
throw new ArgumentException("value must be of type string.""value");
            
base.OnInsert(index, value);
        }

        
protected override void OnRemove(int index, object value)
        
...{
            
if (value.GetType() != Type.GetType("System.String"))
                
throw new ArgumentException("value must be of type string.""value");
            
base.OnRemove(index, value);
        }

        
protected override void OnSet(int index, object oldValue, object newValue)
        
...{
            
if (newValue.GetType() != Type.GetType("System.String"))
                
throw new ArgumentException("newValue must be of type string.""newValue");
            
base.OnSet(index, oldValue, newValue);
        }

        
protected override void OnValidate(object value)
        
...{
            
if (value.GetType() != Type.GetType("System.String"))
                
throw new ArgumentException("value must be of type string.");
            
base.OnValidate(value);
        }

    }
 避免在增加不同类型数据时出错。

用数组编写一个ArrayList类

粗略的用数组来实现了ArrayList的方法,不够完善之处继续改正~~
  • Z_HaiSome
  • Z_HaiSome
  • 2016年08月24日 16:11
  • 269

动态游标 强类型必须有返回值 弱类型没有返回值

DECLARE   TYPE refcur_t IS REF CURSOR   RETURN employees%ROWTYPE;   refcur refcur_t;   v_emp emp...
  • JesseCary
  • JesseCary
  • 2016年12月26日 12:08
  • 478

自己实现一个ArrayList,模仿ArrayList类的底层结构

/** * 自己实现一个ArrayList,模仿ArrayList类的底层结构! */ public class MyArrayList{ private Object[] elementD...
  • whocases
  • whocases
  • 2016年11月30日 23:09
  • 639

自己写一个简单的ArrayList

自己通过写一个简单的SimpleArrayList来加深对JDK源码中的ArrayList的理解。 构造器 如果没有对集合设定长度,这里我们默认采取长度为10作为内置数组的初始化长度。 pu...
  • humian151
  • humian151
  • 2017年09月27日 15:42
  • 139

MVC-强类型模型与@model关键字

ASP.NET MVC提供了一种利用强类型的方法来将数据或对象传递到视图模板中。这种强类型的方法为你的编码过程提供了很丰富的编辑时的智能输入提示信息与非常好的编译时的检查。 如下这一行代码表示将...
  • eleveneee
  • eleveneee
  • 2014年07月30日 20:46
  • 1831

写一个ArrayList类的代理

写一个ArrayList类的代理,其内部实现和ArrayList中完全相同的功能,并可以计算每个方法运行的时间。 package com.alex.question3; import java...
  • Alex_zhuang
  • Alex_zhuang
  • 2012年01月05日 11:24
  • 3147

Java开发很容易犯的几个错误

最近看到一个java程序员最常犯的10个错误的微博,很有意思。 自己就想总结,并后续添加自己开发中常见的错误。 1.将数组转化为列表 数组转为List有个常用的方法如下: List ...
  • sheng94458
  • sheng94458
  • 2017年12月11日 12:29
  • 31

用ArrayList存储数据实现栈的功能(写着玩的)

package com.atguigu.java3; import java.util.ArrayList; public class MyStack { private ArrayList l...
  • sungaochao
  • sungaochao
  • 2015年11月21日 21:52
  • 2244

强类型View相关概念

“使用强类型View传递数据到View”对应的概念是“使用ViewData传递数据到View”,即a Strongly-Typed View与a weakly-typed dictionary  ...
  • sundacheng1989
  • sundacheng1989
  • 2013年11月14日 12:04
  • 3306

java List 的两种常用实现类ArrayList和linkedList

LinkedList类 LinkedList实现了List接口,允许null元素。此外LinkedList提供额外的get,remove,insert方法在 LinkedList的首部或尾部。这些操作...
  • linysheart
  • linysheart
  • 2015年01月17日 09:18
  • 2449
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一个强类型ArrayList类。
举报原因:
原因补充:

(最多只允许输入30个字)