c#学习记录

1.使用@可以使转义字符无效

cs 复制代码
class study
{

    static void Main() {
        string a = @"123\t123";
        Console.ReadLine();
        Console.WriteLine(a); 
    }
   
}

例如:string a = @"123\t123";,输出123\t123

2.字符的不可变性

例如:

cs 复制代码
class study
{

    static void Main() {
        string a = "abc";
        a.ToUpper();
      
        Console.WriteLine(a); 
    }
   
}

输出abc而不是ABC,应该这么修改

cs 复制代码
class study
{

    static void Main() {
        string a = "abc";
        a=a.ToUpper();
      
        Console.WriteLine(a); 
    }
   
}

3.当你有大量字符串需要修改时,使用stringbuilder类比string类效率更高,stringbuilder有专门的方法

4.string a = ""与string a=string.empty等价,但是不等价于string a = null

5.类型可分为值类型和引用类型,string,list属于引用类型,并且null只能赋值给引用类型

6.?是留给数据库使用的

7.var是隐式类型,是自动给变量找到它的类型的

例如:var a=1;就自动把a变为int类型

8.readline读取的是字符串,parse()用来解析字符串,int a1=int.parse(read)即可使read变为int类型,当然read要是数字,否则会出问题。parse和tostring相反。

9.使用goto跳转到switch的某个case

cs 复制代码
switch(n)
        {
        case 1:
            cost += 25;
            break;
        case 2:
            cost += 25;
            goto case 1;
        case 3:
            cost += 50;
            goto case 1;
        default:
            Console.WriteLine("Invalid selection. Please select 1, 2, or 3.");
            break;
        }

10.string类型参数不加ref也是拷贝作用,加了ref才能修改本身值,但list不需要加ref,虽然二者都是引用类型。

相关推荐
月盈缺2 小时前
学习嵌入式的第二十二天——数据结构——双向链表
数据结构·学习·链表
妮妮学代码3 小时前
c#:TCP服务端管理类
java·tcp/ip·c#
SchuylerEX4 小时前
第六章 JavaScript 互操(2).NET调用JS
前端·c#·.net·blazor·ui框架
★YUI★4 小时前
学习游戏制作记录(制作系统与物品掉落系统)8.16
学习·游戏·ui·unity·c#
努力还债的学术吗喽5 小时前
【速通】深度学习模型调试系统化方法论:从问题定位到性能优化
人工智能·深度学习·学习·调试·模型·方法论
南猿北者9 小时前
Cmake学习笔记
笔记·学习·策略模式
diablobaal10 小时前
云计算学习100天-第26天
学习·云计算
测试老哥11 小时前
pytest+requests+allure自动化测试接入Jenkins学习
自动化测试·软件测试·学习·测试工具·职场和发展·jenkins·pytest
mit6.82413 小时前
Linux下C#项目构建
开发语言·c#
Nita.14 小时前
.NET 中的延迟初始化:Lazy<T> 与LazyInitializer
c#·.net