大家好我是SUNWEN今天下午得知晚上要去当更夫呵呵我们这个学校很是奇怪要叫我们轮流去通宵巡逻从晚上:到早上:我有一个物理系的朋友上次在田家炳楼门前找了一个宣传板垫在下面就睡了一觉听了笑死我了!哈哈!
现在我想说的是C#中的容器这是一个非常重要的话题因为不管你写什么样的程序你都不能不与容器打交道什么是容器呢(倒!)容器就是可以容纳东西的东西(再倒!)在C#和Java这种面向对象的编程语言中容器就被称为可以容纳对象的东东不是说一切都是对象吗?以前我一个搞C++的程序员朋友告诉我JAVA中的容器太好用了比C++好用多了而作为JAVA的后来者的C#毫无疑问它的容器功能肯定也是很强大的
foreach语句是遍历容器的元素的最简单的方法我们可以用SystemCollectionsIEnumerator类和SystemCollectionsIEnumerable接口来使用C#中的容器下面有一个例子功能是字符串分割器
: // CollectionClasses\tokenscs
: using System;
: using SystemCollections;
:
: public class Tokens : IEnumerable
: {
: private string[] elements;
:
: Tokens(string source char[] delimiters)
: {
: elements = sourceSplit(delimiters);
: }
:
: //引用IEnumerable接口:
: public IEnumerator GetEnumerator()
: {
: return new TokenEnumerator(this);
: }
:
:
:
: private class TokenEnumerator : IEnumerator
: {
: private int position = ;
: private Tokens t;
:
: public TokenEnumerator(Tokens t)
: {
: thist = t;
: }
:
: public bool MoveNext()
: {
: if (position < telementsLength )
: {
: position++;
: return true;
: }
: else
: {
: return false;
: }
: }
:
: public void Reset()
: {
: position = ;
: }
:
: public object Current
: {
: get
: {
: return telements[position];
: }
: }
: }
:
: // 测试:
: static void Main()
: {
: Tokens f = new Tokens(This is a welldone program new char[] { });
: foreach (string item in f)
: {
: ConsoleWriteLine(item);
: }
: }
: }
这个例子的输出是:
This
is
a
well
done
program
好了这一节就说到这了现在环境不太好旁边一大帮同学在看VCD不好搞