自用笔记。
Visual Studio 2019 Community
下载后双击打开->勾选.NET桌面开发->取消勾选详细信息里的可选功能
修改安装位置->取消勾选“安装后保留下载缓存”
护眼的VS2019黑色主题!
但我觉得还是Dark主题颜色比较好看,又改回Dark主题了。
选择模板:控制台应用(.NET Framework)
设置项目名称、位置和解决方案名称->创建
单行注释
多行注释
添加注释
Ctrl K
+Ctrl C
取消注释
Ctrl K
+Ctrl U
每条语句末尾需要加分号。
代码块{}
程序从上到下执行。
如何执行:点击执行按钮或使用快捷键F5
输出的两种方法:Write() (不换行)和WriteLine()(会换行) 。
1
2
3
4
5
6
7
8
9
10
11
|
//创建变量
//创建了一个数据的容器,容器的名字叫做age, 容器的类型为int
//声明了一个变量,变量的名字是age
int age;
//往容器里面放东西 赋值
age = 10;
double age2;
char age3;
double height;
char sex;
double avg;
|
赋值要求:左右类型一致,并且右边的值所需要的容器大小<=左边的容器
1
2
3
|
String str="test";
String str2=@"C:\a\b\c";
String str3="123"+"456";
|
1
2
3
|
String str = Console.ReadLine();
Convert.ToInt32(str);
Console.WriteLine(str + "-");
|
由字母、数字和下划线组成,但不能以数字开头。
不能和关键字重名。
1
2
|
Console.WriteLine(a + "+" + b + "=" + (a + b));
Console.WriteLine("{0}+{1}={2}", a, b, a + b);
|
1
2
3
4
5
6
7
8
|
if(age<=16)
{
Console.WriteLine("OK");
}else if(age<=20){
Console.WriteLine("Well");
}else{
Console.WriteLine("No");
}
|
1
2
3
4
5
6
7
8
9
10
11
12
|
switch (number)
{
case 1:
Console.WriteLine("冰淇淋");
break;
case 2:
Console.WriteLine("Tea");
break;
case 3:
Console.WriteLine("Coffee");
break;
}
|
简化
1
2
3
4
5
6
7
8
9
|
switch(day){
case 1:
case 2:
Console.WriteLine("aa");
case 3:
case 4:
case 5:
Console.WriteLine("bb");
}
|
1
2
3
|
while(条件表达式){
//循环体
}
|
1
2
3
4
5
6
|
for(代码1; 代码2; 代码3){
//循环体
}
for(初始化; 条件表达式; 增量表达式){
//循环体
}
|
for循环的初始化条件和增量都是可选的。
1
2
3
|
do{
//循环体
}while(条件表达式)
|
do…while会先执行一次循环体再判断。
同一个作用域下变量不能重名。
子作用域可以访问父作用域里的变量,但父作用域不能访问子作用域的变量。
for确定循环次数。
while确定循环条件。
do…while循环体至少被执行一次。
continue用来终止当前循环,继续下次循环。
break跳出当前循环
1
2
3
4
5
6
7
8
|
byte a = 32;
int b = 200;
//b = a; //隐式转换
//a = b; //显式转换
int i = Convert.ToInt32("234");
double j = Convert.ToDouble("4.5");
string s1 = 123 + "";
string s2 = Convert.ToString(123);
|
1
2
3
4
5
6
7
8
9
10
|
//1
int[] ages={34,12,23,34,56,74,22,21,25,64}
Console.WriteLIne(ages[1]);
//2
int[] ages;
ages = new int[];
//3
int[] ages = new int[10];
//4
ages = new int[5] {1, 2, 3, 4, 5};
|
1
2
3
4
5
|
string name="Micheal";
//Console.Write(name.length);
for(int i=0;i<name.length;i++){
Console.WriteLine(name[i]);
}
|
1
2
3
4
5
6
7
8
9
|
string str1 = name.ToLower();
string str2 = name.ToUpper();
string str3 = name.Trim(); //去两边空格
string str4 = name.TrimStart(); //去前面空格
string str5 = name.TrimEnd(); //去后面空格
string[] strArray = name.Split(',');
foreach(string str in strArray){
Console.WriteLine(str);-
}
|
使用Split()函数时提示无法将类型"string"转换为"char",需要把括号里的双引号改为单引号才不会报错。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
//定义
static void VerifyUserName(string username){
//功能实现
}
static void Main(string[] args)
{
//调用
VerifyUserName(username);
}
static int Add2(int[] array){
int sum = 0;
foreach(int temp in array){
sum += temp;
}
return sum;
}
|
根据选择的不同参数类型调用同名不同函数。
F(n) = F(n-1) + F(n-2)
1
2
3
4
5
6
|
enum RoleType
{
Mage, Archer, Assassin, Tank, Support, Warrior
}
RoleType roletype = RoleType.tank;
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
struct struct_name{
访问权限 type typename;
访问权限 type typename;
}
struct StudentInfo{
public int age;
public string name;
public int grade;
public int id;
}
StudentInfo student1;
student1.age = 16;
|
1
2
3
4
5
6
7
8
|
struct Position{
public double x;
public double y;
public double z;
public void PrintPostition(){
Console.WriteLine(x + "," + y + "," + z);
}
}
|
delegate是一种存储函数引用的类型。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
static double Multiply(double param1, double param2){
return param1 * param2;
}
static double Divide(double param1, double param2){
return param1 / param2;
}
delegate double MyDelegate(double param1, double param2);
static void Main(string[] args){
Console.WriteLine(Multiply(2.3, 2));
Console.WriteLine(Divide(4.5, 3));
MyDelegate delegate1;
delegate1 = Multiply;
Console.WriteLine(delegate1(2, 4));
delegate1 = Divide;
Console.WriteLine(delegate1(6, 2.5));
}
|