part01.01 C#基础语法与逻辑控制(一)(1. C# 语言导论:一般的构成要素 2. C# 数据类型)
1. C# 语言导论:一般的构成要素
(1)关键词:用于规定 C# 编程语言最小元素特征,并且用于编译器解释成机器语言的单词或者单词组成的语义环境词语;
(2)标识符:用于描述 C# 编程语言的段落结构(代码块)的基本标识;
(3)类型定义:将一段可执行的代码放在一个包容器内,对这种包容器的定义就是类型定义;
(4)Main() 方法:C# 程序启动时执行的方法(方法一般是对数据处理的一系列步骤的集合);
(5)语句和语句分隔符:描述一个操作系统活动的代码就是一个 C# 语句,多个语句组成一个方法或者一个类型,语句使用 “ ; ”进行隔离;
(6)变量:变量就是在程序中可以变化,可供引用的数据的名称;
System.Console
参考网址:https://msdn.microsoft.com/zh-cn/library/system.console_methods(v=vs.110).aspx
1 class Program 2 { 3 static void Main(string[] args) 4 { 5 #region 读取整行数据 6 string firstName; 7 string lastName; 8 9 System.Console.WriteLine("你好:"); 10 System.Console.Write("请输入你的姓氏:"); 11 12 firstName = System.Console.ReadLine(); 13 System.Console.Write("请输入你的名字:"); 14 lastName = System.Console.ReadLine(); 15 16 System.Console.WriteLine($"你的全名是: { firstName } { lastName }."); 17 System.Console.WriteLine("你的全名是: {0} {1}.", firstName, lastName); 18 System.Console.WriteLine("你的全名是: {1}, {0}.", firstName, lastName); 19 #endregion 20 21 #region 读取单个数据 22 int readValue; 23 char character; 24 readValue = System.Console.Read(); 25 character = (char)readValue; 26 System.Console.Write(character); 27 #endregion 28 Console.ReadKey(); 29 30 } 31 }
2. C# 数据类型
基本的数字类型
文字值:在源代码中直接表示的一个常量的值,要特别注意,不要看成是 “变量”
1 class Program 2 { 3 static void Main(string[] args) 4 { 5 System.Console.WriteLine(42); 6 System.Console.WriteLine(1.618034); 7 System.Console.WriteLine(1.618033988749895); 8 System.Console.WriteLine(1.618033988749895M); 9 System.Console.WriteLine(6.023E23F); 10 System.Console.WriteLine(0x002A); 11 System.Console.WriteLine($"0x{42:X}"); 12 13 Console.ReadKey(); 14 } 15 }
更多类型
1 class Program 2 { 3 static void Main(string[] args) 4 { 5 string option = ""; 6 int comparison = string.Compare(option, "/Help", true); 7 System.Console.WriteLine(comparison); 8 9 System.Console.WriteLine('\''); 10 System.Console.Write('\u003A'); 11 System.Console.WriteLine('\u0029'); 12 13 Triangle tiangle = new Triangle(); 14 15 Console.ReadKey(); 16 } 17 } 18 19 class Triangle 20 { 21 public Triangle() 22 { 23 System.Console.Write(@" 24 /\ 25 / \ 26 / \ 27 / \ 28 /________\ 29 "); 30 } 31 }
“\”转义字符简要说明
字符串类型
A.string 的静态方法
语法 |
例子 |
static string string.Format(string format) |
string demoString; demoString=string.Fromat(“姓名:{0}”,”张三”); System.Console.Write(demoString); |
static string string.Concat(string s1,string s2) |
string demoString; demoString=string.Concat(“姓名:”,”张三”); |
static int string.Compare(string s1,string s2) static int string.Compare(string s1,string s2,bool ignoreCase) |
string optionString; int result=string.Compare(optionString,”/help”) ; int result01=string.Compare(optionString,”/help”,true) ; |
B.string 的方法:应用方法:字符串变量.字符串方法( 参数 );
语法 |
说明 |
bool SrartWith(string value) bool EndWith(string value) |
字符串是否以 value 开头 字符串是否以 value 结尾 |
string ToLower() string ToUpper() |
字符串转换为小写 字符串转换为大写 |
string Trim() string TrimStart() string TrimEnd() |
去除字符串首尾的全部空格符 去除字符串首部的全部空格符 去除字符串尾部的全部空格符 |
string Replace( string oldValue,string newValue) |
将字符串中 oldvalue 子串,全部替换为 newvalue |
null 和 void
类型的分类
(左)值类型 (右)引用类型
转型(类型转换)
数组
A. 数组的声明、实例化、赋值
1 class Program 2 { 3 static void Main(string[] args) 4 { 5 string[] languages01; 6 7 string[] languages02 = { "C#", "COBOL", "Java", "C++", "Visual Basic", "Pascal", "Fortran", "Lisp", "J#" }; 8 9 string[] languages03; 10 languages03 = new string[] { "C#", "COBOL", "Java", "C++", "Visual Basic", "Pascal", "Fortran", "Lisp", "J#" }; 11 12 string[] languages04 = new string[] { "C#", "COBOL", "Java", "C++", "Visual Basic", "Pascal", "Fortran", "Lisp", "J#" }; 13 14 string[] languages05 = new string[9] { "C#", "COBOL", "Java", "C++", "Visual Basic", "Pascal", "Fortran", "Lisp", "J#" }; 15 16 string[] languages06 = new string[9]; 17 18 var languages07 = new string[] { "C#", "COBOL", "Java", "C++", "Visual Basic", "Pascal", "Fortran", "Lisp", "J#" }; 19 } 20 }
B.数组相关的一些方法
1 class Program 2 { 3 static void Main(string[] args) 4 { 5 var languages = new string[] { "C#", "COBOL", "Java", "C++", "Visual Basic", "Pascal", "Fortran", "Lisp", "J#" }; 6 7 System.Array.Sort(languages); // 排序 8 9 var searchString = "COBOL"; 10 var index = System.Array.BinarySearch(languages, searchString); // 查找 11 System.Console.WriteLine("编程语言: " + $"{ searchString }, 所在字符串数组的索引位置: { index }."); 12 13 System.Console.WriteLine(); 14 System.Console.WriteLine($"{ "第一个元素",-20 }\t{ "最后一个元素",-20 }"); 15 System.Console.WriteLine($"{ "-------------",-20 }\t{ "------------",-20 }"); 16 System.Console.WriteLine($"{ languages[0],-20 }\t{ languages[languages.Length - 1],-20 }"); 17 18 System.Array.Reverse(languages); // 反转处理 19 20 System.Console.WriteLine($"{ languages[0],-20 }\t{ languages[languages.Length - 1],-20 }"); 21 22 System.Array.Clear(languages, 0, languages.Length); // 清理,注意不是将所有元素移除,而是所有元素设置为缺省值(null) 23 24 System.Console.WriteLine($"{ languages[0],-20 }\t{ languages[languages.Length - 1],-20 }"); 25 System.Console.WriteLine($"清理之后: { languages.Length }"); 26 27 Console.ReadKey(); 28 } 29 }