C#遍历HashTable与数组、字符串操作详解

需积分: 9 0 下载量 100 浏览量 更新于2024-07-13 收藏 171KB PPT 举报
"这篇文档主要介绍了在C#中遍历HashTable的方法和数组与字符串的使用。其中,遍历HashTable时需要使用Foreach语句和DictionaryEntry类型,而数组的使用包括一维数组和多维数组的定义、初始化及操作。字符串的处理也是重要的内容之一。" 在C#编程中,`HashTable` 是一种存储键值对的数据结构。遍历`HashTable`可以通过`Foreach`循环来实现,这里涉及到的关键类型是`DictionaryEntry`,它用于存储键值对。例如,有一个名为`ht`的`HashTable`实例,遍历它的代码如下: ```csharp foreach (DictionaryEntry de in ht) //ht为一个Hashtable实例 { Console.WriteLine(de.Key); //de.Key对应于键值对的键 Console.WriteLine(de.Value); //de.Value对应于键值对的值 } ``` 这段代码会依次输出`HashTable`中每个键值对的键和值。 接着,文档提到了数组的使用,特别是数组的定义和初始化。在C#中,一维数组的声明通常采用如下语法: ```csharp int[] numbers; ``` 数组在使用前必须初始化,有两种常见的初始化方式。一是直接指定数组的完整内容,如: ```csharp int[] numbers = {1, 2, 3, 4, 5}; ``` 二是先指定数组的大小,然后用`new`关键字初始化所有元素: ```csharp int[] numbers = new int[5] {1, 2, 3, 4, 5}; ``` 此外,还可以使用已赋值的变量来初始化数组,例如: ```csharp int a = 3; int[] numbers = new int[a]; ``` 数组的索引从0开始,所以上面定义的数组包含`numbers[0]`、`numbers[1]`和`numbers[2]`三个元素。 文档给出了一个使用数组的例子,该例子定义了一个字符串数组,用于存储输入的球员名字并倒序输出。程序首先获取球员数量,然后根据数量创建相应长度的字符串数组,接着通过循环输入球员名字并存储到数组中。最后再次遍历数组,反向输出球员的名字。 ```csharp // ... Console.WriteLine("请输入球员个数:"); int playerNo = int.Parse(Console.ReadLine()); string[] names = new string[playerNo]; for (int i = 0; i < names.Length; i++) { Console.WriteLine("请输入第{0}个球员的名字", i + 1); names[i] = Console.ReadLine(); } Console.WriteLine("你输入的球员名字分别是:"); for (int i = 0; i < names.Length; i++) { Console.WriteLine(names[i]); } // ... ``` 除了介绍一维数组,文档还提及了多维数组和交错数组的概念,但并未详细展开。多维数组允许创建二维或更高维度的数组,适用于处理表格数据。交错数组则是不同尺寸数组的组合,提供了一种灵活的方式来处理不规则的数据。这些内容扩展了数组在C#中的应用范围,使得程序员能够更好地管理和操作数据。