2010年12月29日

摘要: ArrayList内部维护着一个数组,可以通过下表进行访问,而ArrayList实现了IEnumerable接口 所以可以使用for 或者是用foreach来遍历 代码如下:#region 遍历列表 String[] str1 = { "第1个元素", "第2个元素", "第3个元素", "第4个元素", "第5个元素", "第6个元素" }; ArrayList al = new ArrayList(str1); Console.WriteLine("使用for "); for (int i = 0; i = al.Count -1; i++) { Console.Write(al[i] 阅读全文

posted @ 2010-12-29 21:20 lichen396116416 阅读(221) 评论(0) 推荐(0)

摘要: 在数组元素中查找元素最长用的是IndexOf 或 LastIndexOf 方法,另外还可以使用BinarySearch方法执行搜索;indexOf方法从前向后搜索指定的字符串,如果找到返回匹配的第一项自0 的索引,否则返回-1 LastIndexOf 方法从后向前搜索指定的字符串,如果找到返回匹配的第一项自0 的索引,否则返回-1 BianrySearch使用二分查找算法从集合中搜索指定的值,并返回找到从0开始的索引,否则返回-1代码如下:#region 查找 String[] str = { "第6个元素","第1个元素", "第3个元素", "第4个元素", "第2个元素", "第5个元素 阅读全文

posted @ 2010-12-29 21:09 lichen396116416 阅读(266) 评论(0) 推荐(0)

摘要: 除了使用集合元素默认的比较器进行排序,还可以传递实现IComparer接口的类,按自定义的排序逻辑进行排序。下面用一个IT书籍,希望将书按价格从高向底排序public class Book { //定义书名属性 private string _bookname; public string Bookname { get { return _bookname; } set { _bookname = value; } } //定义书籍分类属性 private string _bookcategory; public string Bookcategory { get { return _bo 阅读全文

posted @ 2010-12-29 20:09 lichen396116416 阅读(211) 评论(0) 推荐(0)

摘要: 使用Sort方法可以对集合中的元素进行排序,Sort有三种重载方法,如下:使用集合元素的比较方式进行排序public virtual void Sort()使用自定义比较器进行排序public virtual void Sort (Icomparer comparer )l使用自定义比较器进行指定集合范围的排序public virtual void Sort (int index ,int count ,Icomparer comparer)使用第一个重载方法:#region 简单排序 ArrayList al = new ArrayList(); al.AddRange(new string 阅读全文

posted @ 2010-12-29 19:00 lichen396116416 阅读(147) 评论(0) 推荐(0)

摘要: 元素的删除 ArrayList 提供了三种方法将指定的元素从集合总移除,分别是,Remove、 RemoveAt 和RemovRange方法Remove方法接收一个object类型值的参数,用于移除指定元素值的第一个匹配集合元素RemoveAt 方法接收一个int类型的参数,用于删除指定索引的集合,RemoveRange 方法从集合中移除一个范围的元素。三个方法声明如下:从ArrayList实例中删除与object值匹配的第一个元素public virtual void Remove(object obj)删除指定索引的位置index的元素Public virtual oid RemoveAt 阅读全文

posted @ 2010-12-29 16:53 lichen396116416 阅读(287) 评论(0) 推荐(0)

摘要: 插入元素也是向集合中增加元素,与添加(Add和AddRange)不同的是,插入元素可以指定要插入的位置索引,而添加只能在集合的尾部,按顺序添加,插入元素有两种方法,Insert和InsertRange在指定的索引位置index中添加单个元素值valuepublic virtual void Insert( int index ,object value)在指定的索引位置,插入Icollection接口的集合实例public virtual void InsertRange(int index ,ICollection c)代码:插入元素 ArrayList al = new ArrayList 阅读全文

posted @ 2010-12-29 16:32 lichen396116416 阅读(251) 评论(0) 推荐(0)

摘要: 添加元素:ArrayList 有两种方法添加元素,Add和AddRange Add()是将每个要添加的元素添加到列表的尾部,Addrang额() 是获取一个现实Icollection接口的集合实例,例如Array、Queue (队列)、Stack(堆栈)等,并将这个集合实例按顺序添加到列表的尾部声明方法如下:Public virtual int Add(object value)//参数value是需要添加到ArrayList数组中值Public virtual void AddRange(ICollection c) //参数C实现了ICollection的集合类,注意在ArrayList接 阅读全文

posted @ 2010-12-29 15:40 lichen396116416 阅读(292) 评论(0) 推荐(0)

摘要: 为了创建ArrayList列表,可以使用3种构造函数。还可以使用ArrayList的静态方法Repeat创建一个新的ArrayList,这三个构造函数声明如下使用默认的初始量创建Arraylist,该实例并没有任何元素public ArrayList();使用实现了ICollection接口的集合类来初始化新创建的ArrayListpublic ArrayList (ICollection c)用指定的数值,初始化 ArrayList的容量publicArrayList(int capacity)下面用代码来实现,//创建一个使用默认的初始值容量,没有任何元素 ArrayList al1 = 阅读全文

posted @ 2010-12-29 14:44 lichen396116416 阅读(158) 评论(0) 推荐(0)

摘要: System.Collections 命名空间包含可使用的集合类和相关接口,该命名空间下的.net 非 泛型集合类如下所示using System.Collections.ArrayList; 数组集合类using System.Collections.Bitarray 布尔集合类using System.Collections.Queue队列using System.Collections.Stack 堆栈using System.Collections.Hashtable 哈希表using System.Collections.SortedList 排序集合类 阅读全文

posted @ 2010-12-29 14:19 lichen396116416 阅读(143) 评论(0) 推荐(0)

摘要: 在system.Text.RegularExpressions 命名空间中,.net 定义了功能强大的正则表达式引擎,他有8个对象其中最终要的是Regex,下面介绍Regex类的使用 调用正确的构造函数,传递一个模式字符给构造函数,或者传递正确的RegexOptions,Regex regex = new Regex("oscar", RegexOptions.IgnoreCase); //使用match string source = "Oscar is my name"; Match m = regex.Match(source); if (m.Success) { Console.Wri 阅读全文

posted @ 2010-12-29 13:40 lichen396116416 阅读(163) 评论(0) 推荐(0)

摘要: Stringbuilder.Append 提供了对Stringbuilder对象实例的结尾的追加指定类型的功能Stringbuilder.AppendFormat 提供了对Stringbuilder对象实例的结尾的追加指定格式化字符类型的功能StringBuilder sb = new StringBuilder(); string str1 = ","; char[] char2 = { '', '', '' }; bool strbool = false; int i = 13; sb.Append(str1); sb.Append(char2); sb.Append(strbool 阅读全文

posted @ 2010-12-29 13:12 lichen396116416 阅读(339) 评论(0) 推荐(0)

摘要: StirngBuilder的长度可以在运行期间动态的改变(对比String好处),因此,StringBuilder是一种动态字符串的对象。与String类不同的是,为了声明一个Stringbilser的动态串。必须调用StringBuilder类提供的构造函数,StringBuilder提供了6种构造函数 如下: 创建一个空间的StringBuilder 对象,系统默认为初始化一个可以容纳16个字符的长度 public StringBulider();创建一个空间的StringBuilder 对象,参数capacity指定了初始容量的大小public StringBuilder (int ca 阅读全文

posted @ 2010-12-29 12:51 lichen396116416 阅读(204) 评论(0) 推荐(0)

摘要: 替换字符串 :为了替换字符串中特定的子字符串,可以使用String类中的Replace方法,该方法有两个重载 public string Replace (string oldValue ,string newValue)其中将实例字符串中的oldValue 字符串替换为 newVlaue的字符串public string Replace(char oldChar ,char newChar)代码:string str = "这是要被替换的原字符串"; Console.WriteLine(str); Console.WriteLine("---------------------------- 阅读全文

posted @ 2010-12-29 12:02 lichen396116416 阅读(493) 评论(0) 推荐(0)

摘要: 要复制字符串可以使用String类中的Copy和CopyTo 这个两个方法创建一个由str的参数,指定的字符串的副本,即生成一个当前的新实例;Public static string Copy(string str)将指定数码的字符从源实例中的指定位置复制到目标位置,public void CopyTo(int Sourveindex,char[] destination,int destinationindex,int count)其中sourcelndex 是参数destination 调用此方法的字符串中的位置destination 目标Unicode字符的数组count 是destin 阅读全文

posted @ 2010-12-29 11:45 lichen396116416 阅读(234) 评论(0) 推荐(0)

摘要: 如果从字符串中删除特定的字符。可以使用system.String类中的Remove方法,另外system.string 还提供了很多的从字符串中的剪切方法。public string Remove(int startIndex)//startIndex指定索引的位置public string Remove(int startindex ,int count)//count 指定要删除的长度下面举例说明 string strRemove = "演示Remove功能"; Console.WriteLine(strRemove.Remove(2));//删除索引以后的所有 Console.Write 阅读全文

posted @ 2010-12-29 11:23 lichen396116416 阅读(373) 评论(0) 推荐(0)

摘要: System.string 类中提供了Insert方法,在字符串的索引位置插入一个子字符串,此外还提供了PadRight和PadLeft方法实现字符串前导和后置的填充Insert方法// public string Insert (int startIndex ,string value)其中startIndex 是要插入索引的位置,value 是要插入的字符代码示例如下string str = "Hello,World"; string str1 = str.Insert(6, "Oscar"); Console.WriteLine(str1);PadRight ,PadLeft方法实现字符 阅读全文

posted @ 2010-12-29 09:58 lichen396116416 阅读(736) 评论(0) 推荐(0)

摘要: 连接字符串,我们长用到的是“+” 但是在System.String中提供了Concat方法,在Concat中有8种重载的方法,这些方法都是静态的,需要通过String类直接调用,使用相当灵活,代码如下//连接字符串 string str1 = "第一个串"; string str2 = "第二个串"; string str3 = "第三个串"; Console.WriteLine(string.Concat(str1,str2,str3));分裂字符串使用Split,可以将字符串以指定的分割符,分割成一个字符元素的数组,//分裂字符串 string str = "Hello ,World"; 阅读全文

posted @ 2010-12-29 09:17 lichen396116416 阅读(597) 评论(0) 推荐(0)

摘要: System.String使用从0看是的序号索引,来定位字符串中的单个字符,所以,可以利用访问数组的方式来定位字符代码如下string str = "这是一个定位字符串的示例"; Console.WriteLine(str); Console.WriteLine("索引值为1的字符串为{0}",str[1]); Console.WriteLine("索引值为4的字符串为{0}",str[4]); Console.WriteLine("用String类型实现了IEnumerablechar和IEnumerable接口,所以,可以用foeeach遍历"); foreach (char item 阅读全文

posted @ 2010-12-29 07:47 lichen396116416 阅读(1278) 评论(0) 推荐(0)