C# foreach使用实例向你全面展示了C# foreach的使用规范,以及在C# foreach中特别要注意的关键是实现IEnumerable 和IEnumerator 这两个接口:那么学习C# foreach这一C#新加入的语句,我们还是要多多练习和体会。
C# foreach使用1. MySplit 类
- /// <summary>
- /// MySplit 类
- /// </summary>
- public class MySplit : IEnumerable
- {
- private string[] elements;
- public MySplit(string source, char[] delimiters)
- {
- elements = source.Split(delimiters);
- }
- IEnumerator IEnumerable.GetEnumerator()
- {
- return new MyEnumerator(this);
- }
- #region 在嵌套类中实现 IEnumerator 接口
- /// <summary>
- /// 在嵌套类中实现 IEnumerator 接口,以便以后方便创建多个枚举
- /// </summary>
- public class MyEnumerator : IEnumerator
- {
- private int position = -1;
- private MySplit t;
- public MyEnumerator(MySplit t)
- {
- this.t = t;
- }
- public bool MoveNext()
- {
- if (position < t.elements.Length - 1)
- {
- position++;
- return true;
- }
- else
- {
- return false;
- }
- }
- public void Reset()
- {
- position = -1;
- }
- object IEnumerator.Current
- {
- get
- {
- try
- {
- return t.elements[position];
- }
- catch (IndexOutOfRangeException)
- {
- throw new InvalidOperationException();
- }
- }
- }
- }
- #endregion
- }
C# foreach使用2. 使用过程(注意规范)
- MySplit mySplit = new MySplit("大豆男生: I Love You!", new char[] { ' ', '-' });
- foreach (string item in mySplit)
- {
- Console.WriteLine(item);
- }
C# foreach使用3. 程序输出结果
- 大豆男生:
- I
- Love
- You!
C# foreach使用的情况就向你介绍到这里,希望对你了解和学习以及C# foreach使用有所帮助。
【编辑推荐】