C# 语法糖测试--未完待续
2024-10-01 07:20:34
/// <summary>
/// string扩展方法,可以用字符串变量加.的形式直接调用,this是关键
/// </summary>
public static class StringExtention
{
private static Regex regex = new Regex("\\d+");
public static bool IsNumber(this string s)
{
if (string.IsNullOrEmpty(s)) return false;
return regex.IsMatch(s);
}
public static bool IsNullOrEmpty(this string s)
{
if (s == null|| s == "") return true;
return false;
}
}
void Test()
{
//?可空值类型,??空合并运算符
int? a = null;//a是可空的int类型
int? b = 100;
int? c = a ?? b;//a为null,返回b
Debug.Log(c);//输出100
string s1 = null;
string s2 = "ByeBye";
string s3 = s1 ?? s2;//s1为null,返回s2
//?判空运算符
Debug.Log(s1.Length);//报错
Debug.Log(s1?.Length);//输出null
Debug.Log($"s1?.Length:{s1?.Length}");//未输出{}内的值
//集合判空运算符?[]
List<string> petList = new List<string> { "Dog", "Cat", "Bear", "Snake" };
Debug.Log(petList?[0]);//输出Dog
petList = null;
Debug.Log(petList?[0]);//输出Null,不报错;用于判断数组集合是否为空
//扩展方法
string s = "123";
Debug.Log(s.IsNumber());//输出True
Debug.Log(s.IsNullOrEmpty());//输出False
//遍历List
List<int> list = new List<int> { 1, 2, 3, 4 };
list.ForEach(item => Debug.Log(item));
//匿名类
var user = new { Name = "Tome", Age = 18, Sex = "Male" };
//匿名方法
Action<string> p = delegate (string s) { Debug.Log(s); };
p("你好啊");
}
最新文章
- JavaScript使用封装
- Mysql5.6主从热备配置
- 希望有兴趣的加入,共同为项目智能化管理jar包而努力 第二篇
- C#指定日期为一年中的第几周
- Knockout 新版应用开发教程之Computed Observables
- R语言绘图高质量输出
- 20145325张梓靖 实验三 ";敏捷开发与XP实践";
- android离线安装adt
- Oracle系列之序列
- python-os.walk目录递归
- Understanding Extension Class Loading--官方
- COJ 0034 动态的数字三角形
- [UWP小白日记-8]一些零碎的东西
- Git 初学
- 稀疏分解中的MP与OMP算法
- 部署tomcat环境
- PAT1111 Online Map【最短路】【dfs】
- JavaScript--fullPage.js插件
- Android DownloadManager 的使用
- 微信小程序----搜索框input回车搜索事件