C#介绍

C# 语言是适用于 .NET 平台(免费的跨平台开源开发环境)的最流行语言。 C# 程序可以在许多不同的设备上运行,从物联网 (IoT) 设备到云以及介于两者之间的任何设备。 可为手机、台式机、笔记本电脑和服务器编写应用。

C# 是一种跨平台的通用语言,可以让开发人员在编写高性能代码时提高工作效率。 C# 是数百万开发人员中最受欢迎的 .NET 语言。 C# 在生态系统和所有 .NET 工作负载中具有广泛的支持。 基于面向对象的原则,它融合了其他范例中的许多功能,尤其是函数编程。 低级功能支持高效方案,无需编写不安全的代码。 大多数 .NET 运行时和库都是用 C# 编写的,C# 的进步通常会使所有 .NET 开发人员受益。

Hello World

那么,开始我们的第一个C#程序吧

1
2
// This line prints "Hello, World"
Console.WriteLine("Hello, World");

这行代码将会打开一个控制台,并向其中输出Hello World

C#注释

老码农了,再BB敲死你

单行注释

使用//

多行注释

使用/* */

声明和使用变量

很简单,自己看

1
2
String aName = "Apolo";
Console.Write(aName);

还可以修改这个变量

1
2
3
4
String aName = "Apolo";
// 修改这个aName
aName = "xiaoyun";
Console.Write(aName);

字符串

简单写一个字符串拼接

1
2
String app = "Apolo";
Console.Write(app + " Application");

字符串内插

Javaer都馋哭了

基本用法

1
2
String app = "Apolo";
Console.Write($"{app} Application");

在字符串前面添加一个$,在字符串中就可以在{}中使用变量了。例如上面的代码将会输出

Apolo Application

同时多个变量

1
2
3
String app = "Apolo";
String appType = "web";
Console.Write($"{app} Application is a {appType} app");

这段代码将会输出Apolo Application is a web app

执行函数和获取属性

真香啊

1
2
3
4
5
6
7
String app = "Apolo";
String appType = "web";
Console.WriteLine($"{app} Application is a {appType} app");
// 获取字符串的属性
Console.WriteLine($"{app} has {app.Length} letters");
// 调用字符串的ToLower函数,将其转换为小写
Console.WriteLine($"{app} has lower case name {app.ToLower()}");

执行代码,你将会看到:

1
2
3
Apolo Application is a web app
Apolo has 5 letters
Apolo has lower case name apolo

删除空格

1
2
3
4
5
6
7
8
9
10
11
12
13
14
String app = "          Apolo        ";
Console.WriteLine($"[{app}]");

// 去除开头的空格
string appTrimStart = app.TrimStart();
Console.WriteLine($"[{appTrimStart}]");

// 去除结尾的空格
string appTrimEnd = app.TrimEnd();
Console.WriteLine($"[{appTrimEnd}]");

// 去除开头和结尾的空格
string appTrim = app.Trim();
Console.WriteLine($"[{appTrim}]");

执行结果如下:

1
2
3
4
[          Apolo        ]
[Apolo ]
[ Apolo]
[Apolo]

在字符串中搜索和替换文本

相关API。嗯,通俗易懂

搜索字符串

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
String message = "My Name is Apolo";

Console.WriteLine(message);

// 查找字符串
Console.WriteLine($"是否包含字符串Apolo: {message.Contains("Apolo")}");
Console.WriteLine($"是否包含字符串Apollo: {message.Contains("Apollo")}");

// 查找字符串位置,如果找不到将会返回-1
Console.WriteLine($"字符串Apolo的位置: {message.IndexOf("Apolo")}");
Console.WriteLine($"字符串Apollo的位置: {message.IndexOf("Apollo")}");

// 判断字符串是否以某个字符串开头
Console.WriteLine($"字符串是否以My开头:{message.StartsWith("My")}");
Console.WriteLine($"字符串是否以Hello开头:{message.StartsWith("Hello")}");

// 判断字符串是否以某个字符串结尾
Console.WriteLine($"字符串是否以Apolo结尾:{message.EndsWith("Apolo")}");
Console.WriteLine($"字符串是否以ol结尾:{message.EndsWith("ol")}");

// 判断字符串是否包含某个字符串
Console.WriteLine($"字符串是否包含Apolo:{message.Contains("Apolo")}");
Console.WriteLine($"字符串是否包含oll:{message.Contains("oll")}");

运行结果

1
2
3
4
5
6
7
8
9
10
11
My Name is Apolo
是否包含字符串Apolo: True
是否包含字符串Apollo: False
字符串Apolo的位置: 11
字符串Apollo的位置: -1
字符串是否以My开头:True
字符串是否以Hello开头:False
字符串是否以Apolo结尾:True
字符串是否以ol结尾:False
字符串是否包含Apolo:True
字符串是否包含oll:False

替换字符串

1
2
3
4
5
6
7
8
String message = "My Name is Apolo";

/*
* 字符串替换
* 第一个参数是待替换的字符串,第二个参数是替换的字符串
*/
String replaced = message.Replace("My", "You");
Console.WriteLine(replaced);

运行结果

1
You Name is Apolo

C#中的数字

整数

浮点数