int j = 10; if (j == 10) { Console.WriteLine("I get printed"); } elseif (j > 10) { Console.WriteLine("I don't"); } else { Console.WriteLine("I also don't"); }
变量
1 2 3 4 5 6 7 8 9 10 11
int intNum = 9; long longNum = 9999999; float floatNum = 9.99F; double doubleNum = 99.999; decimal decimalNum = 99.9999M; char letter = 'D'; bool @bool = true; string site = "jaywcjlove.github.io"; var num = 999; var str = "999"; var bo = false;
循环
1 2 3 4
int[] numbers = {1, 2, 3, 4, 5}; for(int i = 0; i < numbers.Length; i++) { Console.WriteLine(numbers[i]); }
1 2 3
foreach(int num in numbers) { Console.WriteLine(num); }
string first = "John"; string last = "Doe"; string name = first + " " + last; Console.WriteLine(name); // => John Doe
字符串插值
1 2 3 4
string first = "John"; string last = "Doe"; string name = $"{first}{last}"; Console.WriteLine(name); // => John Doe
字符串成员
成员
说明
Length
返回字符串长度的属性
Compare()
比较两个字符串的静态方法
Contains()
确定字符串是否包含特定的子字符串
Equals()
确定两个字符串是否具有相同的字符数据
Format()
通过 {0} 表示法和使用其他原语格式化字符串
Trim()
从尾随和前导字符中删除特定字符的所有实例。 默认删除前导和尾随空格
Split()
删除提供的字符并从两侧的剩余字符中创建一个数组
逐字字符串
showLineNumbers
1
string longString = @"I can type any characters in here !#@$%^&*()__+ '' \n \t except double quotes and I will be taken literally. I even work with multiple lines.";
// 示例数据源 List<Student> students = new List<Student> { new Student { Name = "Alice", Age = 25, Grade = "A" }, new Student { Name = "Bob", Age = 30, Grade = "B" }, new Student { Name = "Barry", Age = 35, Grade = "C" }, new Student { Name = "Charlie", Age = 22, Grade = "A" }, new Student { Name = "David", Age = 21, Grade = "C" }, new Student { Name = "Damon", Age = 28, Grade = "B" }, new Student { Name = "Echo", Age = 18, Grade = "C" } };
// 使用WHERE筛选出成绩为A的学生 var result1 = students.Where(student => student.Grade = "A");
// 使用WHERE筛选出年龄大于20的学生 var result2 = students.Where(student => student.Age > 20);
// 使用WHERE筛选出名字包含'D'的学生 var result3 = students.Where(student => student.Name.Contains("D"));
// 示例数据源 List<Student> students = new List<Student> { new Student { Name = "Alice", Age = 25, Grade = "A" }, new Student { Name = "Bob", Age = 30, Grade = "B" }, new Student { Name = "Barry", Age = 35, Grade = "C" }, new Student { Name = "Charlie", Age = 22, Grade = "A" }, new Student { Name = "David", Age = 21, Grade = "C" }, new Student { Name = "Damon", Age = 28, Grade = "B" }, new Student { Name = "Echo", Age = 18, Grade = "C" } };
// 使用GROUP BY按成绩进行分组查询 var groupedByGrade = students.GroupBy(student => student.Grade);
// 示例数据源 List<Student> students = new List<Student> { new Student { Name = "Alice", Age = 25, Grade = "A" }, new Student { Name = "Bob", Age = 30, Grade = "B" }, new Student { Name = "Barry", Age = 35, Grade = "C" }, new Student { Name = "Charlie", Age = 22, Grade = "A" }, new Student { Name = "David", Age = 21, Grade = "C" }, new Student { Name = "Damon", Age = 28, Grade = "B" }, new Student { Name = "Echo", Age = 18, Grade = "C" } };
// 使用SELECT创建一个新的匿名类,并输出为集合,一般配合Where使用 var result1 = students.Select(student => new { student.Name, student.Age });
// 使用SELECT创建一个新的指定类,并输出为集合 var result2 = students.Select(student => new StudentDto() { StudentName = student.Name, StudentAge = student.Age });
ORDERBY
排序
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
// 示例数据源 List<Student> students = new List<Student> { new Student { Name = "Alice", Age = 25, Grade = "A" }, new Student { Name = "Bob", Age = 30, Grade = "B" }, new Student { Name = "Barry", Age = 35, Grade = "C" }, new Student { Name = "Charlie", Age = 22, Grade = "A" }, new Student { Name = "David", Age = 21, Grade = "C" }, new Student { Name = "Damon", Age = 28, Grade = "B" }, new Student { Name = "Echo", Age = 18, Grade = "C" } };
// 使用LINQ的OrderBy进行排序 var result1 = students.OrderBy(student => student.Age);
// 使用LINQ的OrderByDescending进行降序排序 var result2 = students.OrderByDescending(student => student.Age);
// 示例数据源 List<Student> students = new List<Student> { new Student { Name = "Alice", Age = 25, Grade = "A" }, new Student { Name = "Bob", Age = 30, Grade = "B" }, new Student { Name = "Barry", Age = 35, Grade = "C" }, new Student { Name = "Charlie", Age = 22, Grade = "A" }, new Student { Name = "David", Age = 21, Grade = "C" }, new Student { Name = "Damon", Age = 28, Grade = "B" }, new Student { Name = "Echo", Age = 18, Grade = "C" } };
使用 LINQ 进行查询
1 2 3 4 5
var result = students .Where(student => student.Age > 20) // WHERE: 选择年龄大于20的学生 .GroupBy(student => student.Grade) // GROUP BY: 按成绩分组 .Select(group => group.OrderBy(student => student.Age).First().Name) // SELECT: 选择每个分组中年龄最小的学生的姓名 .ToList(); //转换为List<Student>()