语句、块和空白 语句是C#程序中执行操作的命令,是一行用分号()终止的代码 System. Console. WriteLine( Hello World!) 个块是以上括号和下括号为边界的语句集合 y=x+1 个块可被用在一个类的定义中 public class date int day int month Int year; 块语句可被嵌套
语句、块和空白 • 语句是C#程序中执行操作的命令,是一行用分号(;) 终止的代码 System.Console.WriteLine(“Hello World!”); • 一个块是以上括号和下括号为边界的语句集合 { x=y+1; y=x+1; } • 一个块可被用在一个类的定义中 public class Date { int day; int month; int year; } • 块语句可被嵌套 A-PDF Split DEMO
C#程序结构 所有代码都组织在类中。 程序从Main(方法开始执行,Main方法可以包含字符 串数组( string]ags类型的参数 ·C#语言区分大小写 C#程序中允许任意多的空白 C#程序中可以使用∥,/*和∥添加注释,∥后面跟xml 文档。 Mour first c# class class Hello world static void Maino System. Console. WriteLine(" Hello World!
C#程序结构 • 所有代码都组织在类中。 • 程序从Main()方法开始执行,Main方法可以包含字符 串数组(string[] args)类型的参数。 • C#语言区分大小写。 • C#程序中允许任意多的空白。 • C#程序中可以使用//, /* */和///添加注释,///后面跟xml 文档。 //our first c# class class HelloWorld{ static void Main() { System.Console.WriteLine(“Hello World!”); } } A-PDF Split DEMO
标识符 ·标识符是赋予变量、用户定义的类型和这些类型中成 员的名称 可从一个字母或下划线(开头,可以包含数字和字符。 是大小写区别对待的,且无最大长度 合法的标识符: identifier userName User name sys varl 标识符也采用16位 Unicode编码。 标识符不能是关键字,但是它可包含一个关键字作为它的名 字的一部分。 thisone是一个有效标识符,但this却不是,因为 this是一个关键字。C#有76个关键字。如果需要把某个关键字 作为标识符,可以在其前面加上前缀@。如@this
标识符 • 标识符是赋予变量、用户定义的类型和这些类型中成 员的名称 – 可从一个字母或下划线(_)开头,可以包含数字和字符。 – 是大小写区别对待的, 且无最大长度。 • 合法的标识符: identifier userName User_name _sys_varl • 注意: – 标识符也采用16位Unicode编码。 – 标识符不能是关键字,但是它可包含一个关键字作为它的名 字的一部分。 thisone是一个有效标识符,但this却不是,因为 this是一个关键字。 C#有76个关键字。如果需要把某个关键字 作为标识符,可以在其前面加上前缀@。如@this。 A-PDF Split DEMO
C#预定义数据类型 C#中有15个预定义数据类型,其中13个值类型,2个引 用类型。 逻辑类型bool 文本类型char, string 整数类型byte, short,int,long, byte, ushort,uint, ulong 浮点类型 double, float 十进制 decimal 基类 object 除 string和 object为引用类型外,其他类型都是值类型 struct和enum为值类型,类、引用、委托和数组为引用 类型。 值类型:赋值操作拷贝的是数据的内容。 引用类型:赋值操作拷贝的是数据的存储地址
C#预定义数据类型 • C#中有15个预定义数据类型,其中13个值类型, 2个引 用类型。 – 逻辑类型 bool – 文本类型 char, string – 整数类型 byte, short, int, long, ubyte, ushort, uint, ulong – 浮点类型 double, float – 十进制 decimal – 基类 object • 除string 和object为引用类型外,其他类型都是值类型。 struct 和enum为值类型,类、引用、委托和数组为引用 类型。 – 值类型:赋值操作拷贝的是数据的内容。 – 引用类型:赋值操作拷贝的是数据的存储地址。 A-PDF Split DEMO
值类型的内存分配 int xiaoMing=100 Int xiaoFang XiaoMing, xiao Fang=200 说明: 结果 xiaoMing为100,因为值类型不存在指向同一个对象 的问题。 ( xiaoMing== Xiao Fang)的结果为 false Xiao Mir 100 xiaoFang 200
值类型的内存分配 int xiaoMing = 100; int xiaoFang = xiaoMing; xiaoFang = 200; 说明: 结果xiaoMing 为100,因为值类型不存在指向同一个对象 的问题。 ( xiaoMing= = xiaoFang)的结果为false。 xiaoMing 100 xiaoFang 200 A-PDF Split DEMO
引用类型的内存分配 · Student student;∥声明一个 Student对象引用 student00000000 student= new studenti0),∥创建一个对象 new Studento student student 00000000 student OxOlabcdef 0000000000000000 0000000000000000 0000 0000 00000000 00000000 Student student2= student 对象赋值 student ox0labcdef H student2 OxOlabcdef 200328013203194 0000 00000000
引用类型的内存分配 • Student student; //声明一个Student对象引用 student • student = new Student(); //创建一个对象 new Student() student = student student • Student student2 = student; //对象赋值 – student student2 00000000 0000000000000000 0000 00000000 00000000 0x01abcdef 0000000000000000 0000 00000000 0x01abcdef 200328013203194 0000 00000000 0x01abcdef A-PDF Split DEMO
逻辑类型——bool bool数据类型有两种值:true和 false。 例如: bool truth=true; 上述语句声明变量 truth为boo类型,它 被赋予的值为tue。 注意:在整数类型和bool类型之间无转换 计算
逻辑类型──bool • bool 数据类型有两种值:true 和false 。 例如:bool truth = true ; • 上述语句声明变量truth 为bool 类型,它 被赋予的值为true 。 • 注意:在整数类型和bool类型之间无转换 计算。 A-PDF Split DEMO
字符类型—char char代表一个16- bit Unicode字符 char 必须包含用单引号()引用的文字 可以使用下列符号: a字符a 个制表符(Tab键) 反斜杠,即\ u005c3一个特殊的 Unicode字符,对应反斜杠 关于 Unicode的详细信息可参阅 http:/www.unicode.org
字符类型──char • char代表一个16-bit Unicode字符 char c=‘ 中’; • 必须包含用单引号(‘’)引用的文字 • 可以使用下列符号: ‘a’ 字符 a ‘\t’ 一个制表符(Tab 键 ) ‘\\’ 反斜杠,即 \ ‘\u005c’ 一个特殊的Unicode字符,对应反斜杠‘\’ 。 关于Unicode的详细信息可参阅 http://www.unicode.org A-PDF Split DEMO
整数值 采用两种进制——十进制和16进制 十进制值是2 0x12AC首位的0x表示这是一个16进制的数值 缺省int,可以用后缀“LU,UL或相应的 小写字母定义其他整数类型。 uint ui= 1234U long 1-=1234L ulong ul=1234UL
整数值 • 采用两种进制──十进制和16进制 2 十进制值是2 0x12AC 首位的0x表示这是一个16进制的数值 • 缺省int,可以用后缀“L,U,UL”或相应的 小写字母定义其他整数类型。 uint ui = 1234U; long l = 1234L; ulong ul = 1234UL; A-PDF Split DEMO
整数变量类型及范围 长度 类型 范围 8 bits byte 27(128)…27-1 byte 0….28-1(255 16 bits short 215(32728)…215-1 ushort 0….215-1(65535) 32 bit int 231(21亿)..231-1 Int 0.232-1(42亿) 64 bits on 263(900亿亿)…263-1 long 0.264-1(1800亿亿)
整数变量类型及范围 长度 类型 范围 8 bits byte -2 7(128) ... 2 7 -1 ubyte 0 ... 2 8 -1 (255) 16 bits short -215(32728) ... 215 –1 ushort 0 ... 215 –1 (65535) 32 bit int -231(21 亿) ... 231 –1 int 0... 232 –1 (42 亿) 64 bits long -263(900亿亿) ... 263 –1 long 0... 264 –1 (1800亿亿) A-PDF Split DEMO