1、文档注释
用于对类和方法进行注释,在类或方法前面,连续输入三个/
Demo:
namespace _01
{
/// <summary>
/// 这是Program类
/// </summary>
class Program
{
/// <summary>
/// 这是Main方法,是程序执行的入口
/// </summary>
/// <param name="args"></param>
static void Main(string[] args)
{
}
}
}
2、Console.WriteLine();有多个参数时,输出都是第一个参数中的内容,从第二个参数开始都是用来替换第一个参数中的占位符的值,所以从第二个参数开始,要不要输出,就要看第一个参数中有没有相关的占位符。
Demo:
string name = "菜菜";
int age = 32;
Console.WriteLine("{0}我叫" + name, "今年" + age + "岁了");
运行结果:今年32岁了我是菜菜
3、在字符串前面加一个@符号有两种意义:
● 字符串中如果有\,则不再理解为转义符
● 使字符串可以换行
4、常量
语法:
Const 类型 常量名=常量值
在定义时赋值,在其他地方不允许赋值
5、枚举
定义一种类型,在定义时指定这个类型的所有制。
语法:
enum 类型名
{
值一,值二,……,值N
}
注:
● 枚举的定义,一般与类定义在同一个级别,这样,在同一个命名空间下的所有的类都可以使用这个枚举。
● 定义枚举时,值不能为int类型,但枚举类型的变量都可以强制转换为int类型。
● 枚举的值在定义时是有一个默认编号的,编号从0开始。
● 如何将字符串转换成枚举类型:
(自己定义的枚举类型名)Enum.Parse(typeof(自己定义的枚举类型名),"待转换的字符串")
枚举的作用:
● 限制用户不能随意赋值,只能在定义枚举时列举的之中选择。
● 不需要死记每一个值,只需要选择相应的值。
Demo:
public enum Week
{
Mon=1,Tues,Wed,Thu,Fri,Sat,Sun=0
}
class Program
{
static void Main(string[] args)
{
Week week=(Week)(Enum.Parse(typeof(Week),"Sun"));
Console.WriteLine((int)week);
}
}
运行结果:0
6、结构
为什么要用结构:
● 为了存储一个事物的信息,要声明一组变量,当要存储N个事物的信息时,就要声明N组变量,既麻烦且代码冗余。
● 存储一个事物的多个变量间没有关系,容易记乱。
语法:
访问修饰符 struct 结构名
{
定义结构成员;
}
声明好结构之后,通过结构名.成员名来访问结构的成员。
Demo:
public struct Person //定义一个名称叫person的结构。
{
public string name; //结构成员
}
class Program
{
static void Main(string[] args)
{
Person person1, person2;
person1.name = "菜菜";
person2.name = "饭饭";
Console.WriteLine("Hello,{0},我是{1}", person1.name, person2.name);
}
}
运行结果:Helllo,菜菜,我是饭饭
7、数组
可以帮我们一次声明多个同类型的变量。这些变量在内存中是连续存储的。
语法:
数据类型[] 数组名 =new 数据类型[数组长度]
如何访问数组:通过下标(索引)来访问数组。
Demo:
int[] num=new int[2];
for (int i = 0; i < 2; i++)
{
Console.WriteLine(num[i]);
}
运行结果:
0
0
注:数字类型的数组一旦声明,里面的每一个元素都将初始化为0,字符类型初始化为\0,字符串类型初始化为NULL
8、冒泡排序
让数组中的元素两两比较(第i个与第i+1个比较)经过n-1次两两比较,数组中的元素能按照我们预期的规律排序。
例如:
10,20,30,40,50,60 原始数据6个元素
20,30,40,50,60,10 第一趟比较5次
30,40,50,60,20,10 第二趟比较4次
40,50,60,30,20,10 第三趟比较3次
50,60,40,30,20,10 第四趟比较2次
60,50,40,30,20,10 第五趟比较1次
也就是n个数需要排n-1趟
第t 趟比较的次数为n-t次
Demo:
int[] num=new int[6]{10,20,30,40,50,60};
for (int i = 0; i < num.Length-1; i++)
{
for ( int j = 0; j < num.Length - i - 1;j++ )
{
if (num[j] < num[j + 1])
{
int temp = num[j];
num[j] = num[j + 1];
num[j + 1] = temp;
}
}
}
for (int i = 0; i < num.Length; i++)
{
Console.WriteLine(num[i]);
}
运行结果:
60
50
40
30
20
10
9、方法
用来复用代码的。当我们在一个程序中反复写同样的代码,那一般情况下,我们可以把需要重复写的代码定义在一个方法中,用的时候只需要调用就可以了。
语法:
[访问修饰符] [static] 返回值类型 方法名([])
{
方法体;
}
方法的调用:
如果是静态方法(有static修饰的)则使用类名.方法名()
在类中调用本调用的方法,可以只写方法名()
注:
a、方法一般情况下要定义在类(class)中。
b、如果方法没有返回值,则返回值类型写void。
c、如果方法中没有参数,()不能省略。
d、一个方法只能有一个返回值。
10、方法的重载
在同一个类中,方法名相同,并且方法的参数的个数不同或者对应位置上的类型不同,构成方法的重载。
写在后:有关变量类型、运算符、顺序循环分支跳转语句等重点基础知识由于在C语言课上系统学习过,在此不一一赘述。