C#根本入门 二 循环语句
与C语言顶用法不异。
continue:结束本次循环(continue)后面的代码不再执行,进入下次循环(凡是与if连用)。
数组一维数组界说:int[] intArray;
一维数组初始化:界说后,必需对其初始化才华使用
动态初始化:数据类型[] 数组名=new 数据类型[数组长度]{元素1,元素2...};动态初始化借助new运算符为数组元素分配内存空间,并赋初值。
不给定初值情况下,各元素取默认值,数值型初始值为0,布尔型为false。
静态初始化:数据类型[] 数组名={元素1,元素2...}
得到数组长度:数组名.Length();得到的值即为数组的长度。
枚举把可能呈现的情况一一列举出来,可以使用enum关键字来声明枚举类型,它的值被限制在所列举出来的值中。
语法:enum 枚举类型名{枚举值1,枚举值2...},例如:enum Season{spring,summer,autumn,winter} 此中season相当于int,Season s=Season.summer;
在内部,一个枚举为每个元素都关联了一个整数值,默认情况下编号从0开始,后面的编号都递增1,spring=0,summer=1...,也可以本身赋值,此外允许多个枚举指定同一个数据值。
布局体是一种自界说数据类型,相当于复合型容器,可以存储多种类型的数据。
布局体的声明
struct 布局体名称 { 访谒修饰符 布局类型 成员名称; 访谒修饰符 布局类型 成员名称; } 例子1: public struct PersonStruct { public char sex; public int age; public float money; } 例子2: public struct PersonStruct { public char sex; public int age; public float score; public string name; } //界说布局体 public static void Main(string[] args) { int a; PersonStruct per1; per1.name = "zhangsan"; per1.sex=‘男‘; Console.WriteLine("姓名:{0},性别:{1}", per1.name, per1.sex); }访谒修饰符:所有类型和类型成员都具有访谒级别,用来控制是否可以在当前措施集的其它代码或者其他措施集中使用它们
public:同一措施集中的任何其他代码或引用该措施集的其他措施集都可以访谒该类型或成员,访谒不受限制;
private:只有同一类或布局中的代码可以访谒该类型或成员,访谒仅限于包罗类型;
protected:只有同一类或布局或者此类的派生类中的代码才可以访谒的类型或成员;
internal:同一措施集中的任何代码都可以访谒该类型或成员,但其他措施集中的代码不成以。
注意:直接在定名空间中定名的类和布局体(即没有嵌套在其他类和布局体中),访谒修饰符只能是public和internal,如果没有指定修饰符,默认为internal。
引用类型C#中有两种类型:引用类型和值类型。
引用类型的变量存储对其数据(东西)的引用,而值类型的变凉直接包罗其数据。(图3)
装箱和拆箱:
装箱是将值类型转换为引用类型
拆箱是将引用类型转换为值类型
操作装箱拆箱成果,,可通过允许值类型的任意类型与Object类型的值彼此转换,将值类型与引用类型链接起来。
装箱操纵:
int vel=10;//值类型 object obj=vel;//把数值类型转换为引用类型 Console.WriteLine("obj=" + obj);拆箱操纵
int val=100; object o=val; int d=(int)o; stringstring的特殊性:string类型暗示一个字符序列(零个或更多Unicode字符)。string是.Net Framework中String的别号。尽管string是引用类型,但界说相等运算符(== 和!=)是为了对照string东西的值,这使得对字符串相等性的测试更为直不雅观。
+在string中,是连接两个字符串用的,不是算术运算符。
字符串访谒:
string str = "zhangxiaohan"; char c = str[4]; Console.WriteLine(c);若要测试字符串是否为空,可以用
bool d = string.IsNullOrEmpty(str); Console.WriteLine(d);字符串要领(图4、5)
StringBuilder:string东西是不成转变的,每次是永System.String类中的要领之一时,都要在内存中创建一个新的字符串东西,这就需要为该东西分配新的空间,如果需要多次改削,String的开销就十分大,于是有了System.Text.StringBuilder可以大大提升效率。
声明:StringBuilder s1=new StringBuilder("new");
shiyong1StringBuilder.Append来添加信息:s1.Append("string");