C#——特殊语法

简介: C#——特殊语法

var隐式类型

var是一种特殊的变量类型,它可以用来表示任意类型的变量。

要注意的是:

1.var不能作为类的成员只能用于临时变量申明时,也就是一般写在函数语句块中

2.var必须初始化

var i = 5;
var s = “123";
var array = new int[] { 1,2,3,4 };
var list = new Listcint>();


设置对象初始值

申明对象时,可以通过直接写大括号的形式初始化公共成员变是和属性

Person p = new Person( 106){ sex = true,Age = 18,Name = "张三"};
Person p2 = new Person( 200){ Age = 18 };


设置集合初始值

申明集合对象时,也可以通过大括号直接初始化内部属性

int[] array2 = new int[] { 1,2,3,4,5 };
List<int> listInt = new List<int>( { 1,2,3,4,5,6 };
List<person> 1.istPerson = new List<person>()
{
    new Person(28e) ,
    new Person(180){Age = 10},
    new Person(1){sex = true,Name ="张三"}
};
Dictionary<int,string> dic = new Dictionary<int,string>()
{
    { 1,"123"},
    { 2,"222"}
};


匿名类型

var变量可以申明为自定义的匿名类型

var v = new i age = 10,money = 11,name = "小明";
console.writeLine(v.age);
Console.writeLine(v.name);


可空类型

1.值类型是不能赋值为空的

int c = null;

2.申明时在值类型后面加?可以赋值为空

int?c= null;

3.判断是否为空

if( c.Hasvalue )
{
    console.writeLine(c);
    Console.writeLine(c.value);
}

4.安全获取可空类型值

int? value = null;

4-1.如果为空默认返回值类型的默认值

Console.writeLine(value.GetvalueorDefault());

4-2.也可以指定一个默认值

Console.writeLine(value.GetvalueorDefault(100));


空合并操作符

空合并操作符??

左边值??右边值

如果左边值为null就返回右边值,否则返回左边值,其实只要是可以为null的类型都能用。

int? intv = null;
//int intI = intv == null ? 100 : intv.value;
int inti = intv ??100;
console.writeLine(intI);
string str = null;
str = str ?? "hahah";
Console.writeLine(str);


内插字符串

关键符号:$

用$来构造字符串,让字符串中可以拼接变量

string name ="张三";
int age = 18;
Console.writeLine($"好好学习,{name},年龄:{age}");


单句逻辑简略写法

当循环或者if语句中只有一句代码时大括号可以省略

if (true)
    Console.writeLine("123123");
for (int j=0; j<10;j++)
    Console.writeLine(j);
while (true)
    console.writeLine("123123");


目录
相关文章
|
6月前
|
存储 开发框架 .NET
【C#】C# 基础语法与游戏开发
【1月更文挑战第21天】【C#】C# 基础语法与游戏开发
C#的基本语法结构学习案例详解
C#的基本语法结构学习案例详解
61 0
|
6月前
|
C#
C#的基本语法结构学习
【5月更文挑战第17天】C#基础语法包括变量(如`int x = 10`)、常量(`const int MAX_VALUE = 100`)、运算符(如算术和比较运算符)、控制语句(if、for、while等)和函数声明(`int Add(int x, int y) { return x + y; }`)。这些构成C#程序的基本元素。
75 0
|
3月前
|
存储 C# 索引
C# 集合语法全解
C# 集合语法全解
29 0
|
6月前
|
开发框架 安全 .NET
C# .NET面试系列一:基础语法
<h2>基础语法 #### 1. 字符串中 string str = null 和 string str = "" 和 string str = string.Empty 的区别? string str=null: ```c# 这表示字符串变量str被初始化为null,即它不引用任何对象。这与空字符串是不同的,因为空字符串是一个具有零长度的字符串对象,不会分配内存空间 ``` string.Empty: ```c# 这表示字符串变量str被初始化为空字符串,即一个具有零长度的字符串对象。这与null是不同的,因为str引用了一个空字符串对象 ``` string str="" :
120 1
|
6月前
|
C#
C#语法快速热身
C#语法快速热身
|
6月前
|
存储 C# 开发者
C#基础语法
C#基础语法
34 0
|
6月前
|
存储 C#
C#基础语法(类和对象)
C#基础语法(类和对象)
40 2
|
6月前
|
存储 C#
C#基础语法(数组和函数)
C#基础语法(数组和函数)
65 1
|
6月前
|
C#
C#基础语法(判断和循环)
C#基础语法(判断和循环)
57 1