首页 > 学院 > 开发设计 > 正文

【C#基础】云山雾罩之那些分不清的相近用法(上)

2019-11-14 09:04:10
字体:
来源:转载
供稿:网友

枚举

枚举类型(也称为枚举)为定义一组可以赋给变量的命名整数常量提供了一种有效的方法。(个人理解:枚举是提前声明好的一组具有特定值的数据类型,用于选择的场合,有程序提供的选项供用户选择时使用,相当于控件中的listbox)例如在输入信息中人的性别只有男和女,为避免不必要的错误,提前枚举出性别的选项:Public enum Gender {男,女}

枚举的优点:1、枚举可以使代码更易于维护,有助于确保给变量指定合法的、期望的值。2、枚举使代码更清晰,允许用描述性的名称表示整数值,而不是用含义模糊的数来表示。3、枚举使代码更易于键入。在给枚举类型的实例赋值时,VS.NET IDE会通过IntelliSense弹出一个包含可接受值的列表框,减少了按键次数,并能够让我们回忆起可能的值

4.使数据规范,便于统计和分类,防止出现“同意多词”的现象,防止数据的乱输入。

 

结构:public struct Person{public string _name; publicint _age;public gender _gender}  一次性声明多个不同的变量时使用。

 

数组(array)

定义:数组是具有名称的、包含一组具有相同类型的变量的集合,Array 类是支持数组的语言实现的基类。数组中通过“索引”或“下标”来区分数组元素,下标从0开始,数组的声明格式:类型[ ] 数组名

数组的初始化:是指为数组分配内存的过程,初始化有四种方式。

第一种:int[ ] array =new int[ 2];

第二种:int[ ] array ={2,34,56,78,90};

第三种:int[ ] array =new int[5]{ 2,34,56,78,90} //元素个数不能超过数组定义的大小

第四种:int[ ] array; array =new int[ ]{ 2,34, 56,78,90};

对数组的遍历

使用foreach循环,数组的遍历就是对数组的所有元素逐个进行访问。Foreach(类型 变量名 in 数组名){循环体};使用for循环,for(int i=0,i< array.length,i++){ S+= array [i]; }

比较:foreach语句总是遍历整个数组,如果只需要遍历某个部分,或者反向遍历,使用for循环;foreach语句的循环只是访问数组中的每个元素的值,作为一个只读属性,如果要写入或者修改,或者需要知道元素对应的索引则需要for语句。

 

集合(arraylist)

集合相当于一个容器,对于不同类型的变量的存取,使用集合。相比数组不必考虑类型和长度,声明格式:ArrayList 集合名=new arraylist( ); 添加元素:ArrayList.add=(“元素”)

Array和ArrayList的区别

Array的大小是固定的,而ArrayList的大小可根据需要自动扩充;array中一次只能获取或设置一个元素的值,而ArrayList中允许添加插入或移除某个范围的元素,array下限可以自定义,而ArrayList的下限始终为零;array可以具有多个维度(数组可以有二维和多维,但集合只能是一维的),但ArrayList只能是一维的;array位于system命名空间中,而ArrayList是提供的用于数据存储和检索的专用类,ArrayList位于system.collections命名空间中。

[] 是针对特定类型、固定长度的。

List 是针对特定类型、任意长度的。

Array 是针对任意类型、固定长度的。

ArrayList 是针对任意类型、任意长度的。

说明:博主在理解array和ArrayList的时候一直不明白是做什么,一开始以为是数组的方法或者属性,后来感觉应该是数组的一种声明方式,和用[ ]作为数组生命的组成应该是一样的,只是使用起来更灵活,大小可以动态增加的数组,数组可以认为在功能上是集合的一种特殊类型。Array 和 ArrayList 是通过存储 object 实现任意类型的,所以使用时要转换。

篇幅有限,未完待续……

或在下篇继续!


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表