c# 中@ 的三种用法

以前只知道@在C#中为了写文件路径的\不要加转义符而在前面加上@标识符,没想到@还有其他的作用

1.忽略转义字符

例如

1

stringfileName ="D:\\文本文件\\text.txt";

使用@后

1

stringfileName =@"D:\文本文件\text.txt";

2.让字符串跨行

例如

1

2

3

4

stringstrSQL ="SELECT * FROM HumanResources.Employee AS e"

+" INNER JOIN Person.Contact AS c"

+" ON e.ContactID = c.ContactID"

+" ORDER BY c.LastName";

使用@后

1

2

3

4

stringstrSQL =@"SELECT * FROM HumanResources.Employee AS e

INNER JOIN Person.Contact AS c

ON e.ContactID = c.ContactID

ORDER BY c.LastName";

3.在标识符中的用法

C#是不允许关键字作为标识符(类名、变量名、方法名、表空间名等)使用的,但如果加上@之后就可以了

例如

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

publicstaticvoid@static(int@int)

{

if(@int> 0)

{

System.Console.WriteLine("Positive Integer");

}

elseif(@int== 0)

{

System.Console.WriteLine("Zero");

}

else

{

System.Console.WriteLine("Negative Integer");

}

}