.NET7下string的改进
string是开发过程中,使用频度最高的类型之一,所以在构建类型时作了很多处理,如“不可变性”,“保留性”等特点。string的常量是在"“引号中进行赋值的。 var str1 = "这是一段文字"; Console.WriteLine(str1); 为了字符串的格式化,引入了$““定义方式,这样就可以在字符串中用{}来标注格式化的内容了。 var str2 = $"时间:{DateTime.Now}"; Console.WriteLine(str2); //输出结果是:时间:1/6/2023 15:37:13 var str2_1 = $"时间:{DateTime.Now:yyyy-MM-dd}"; Console.WriteLine(str2_1); //输出结果是:时间:2023-01-06 为了解决字符串内容的换行,引定入@"",来定义有换行的字符串,比如下面的一条SQL查询,可以按格式化后的样式来定义。$和@可以混用,不分先后。 var str3 = @"SELECT ID ,Question ,Score ,QuestionTypeID ,SubjectTypeID FROM Questions"; Console.WriteLine(str3); var str3_1 = @$"SELECT ID ,Question ,Score ,QuestionTypeID ,SubjectTypeID FROM Questions WHERE Score>{10}"; Console.WriteLine(str3_1); 其实原始字符串还解决了一个问题,就是字符串中有"的问题,以前需要有转义字符来实现,现在原始字符串都搞定了。 Console.WriteLine("\"a\" 是小写的");//通过\来转义 Console.WriteLine(@"""a"" 是小写的");//前缀是@时,通过"转义 最佳demo是json字符串的定义,用原始字符串的方式定义json字符串,最合适不过了。 var jsonString = """ { "irstName": "John", "astName": "Smith", "ex": "male", "ge": 25, "ddress": { "treetAddress": "21 2nd Street", "ity": "New York", "tate": "NY", "ostalCode": "10021" } } """; Console.WriteLine(jsonString) 通过下图,看到的json原始字符串,一目了然: ...