C# 基础拾忆 (一)

141 阅读3分钟

一、string.IsNullOrEmpty() 方法的使用 1

IsNullOrEmpty(string)string 类的一个有参的方法,方法需要类的调用,所以

string.IsNullOrEmpty(string)

IsNullOrEmpty 是判断字符串的 Null 值和 "" 值。如果字符串为空或为 "" 都返回 true

string.IsNullOrEmpty(null) /// 返回 `true` 
string.IsNullOrEmpty("") /// 返回 `true`

if (string.IsNullOrEmpty(str))  /// 返回 false,才表示 str 即不为空也不为 ""。

二、Split 参数的使用 2

string test = "程$晓$";

使用 StringSplitOptions.RemoveEmptyEntries

string[] temp = test.Split(new string[] { "$" }, StringSplitOptions.RemoveEmptyEntries);

输出结果

数组长度为 2 temp[0]="程" temp[1]="晓";

使用 StringSplitOptions.None

string[] temp = test.Split(new string[] { "$" }, StringSplitOptions.None);

// 或

string[] temp = test.Split('$');

输出结果

数组长度为 3 temp[0]="程" temp[1]="晓" temp[2]="";

三、使用 Replace 方法来替换字符串 3

在 C# 的字符串操作过程中,有时候需要替换字符串中的某个子字符串,此时就可以使用到字符串类自带的 Replace 方法来实现,Replace 方法将查找到 所有符合 被替换的子字符串,然后将之全部替换为目标字符串。

Replace 方法有 2 个方法重载实现,一个是

string Replace(string oldValue, string newValue)

另一个是

Replace(char oldChar, char newChar);

前面的那个重载形式为以 子字符串 的形式来进行替换,而后面的重载形式为按照 单个字符匹配 进行替换。

例如

字符串

string str="Hello  World";
  1. 子字符串 Hello 替换为 Ni Hao
string str = "Hello World";
string resultA = str.Replace("Hello", "Ni hao");
  1. 将字符串中所有的 o 字符 替换为 A,下面 2 种方法都可以。
string str = "Hello World";

string resultB = str.Replace("o", "A");  
string resultC = str.Replace('o', 'A');

看某大佬写的源码,还有这种 链式 写法

string[] lQuaternionArray = lJsonData.Replace("(", "").Replace(")", "").Replace(" ", "").Split(',');

四、string 的 Contains() 方法 4

C# Contains() 方法用于返回一个值,该值指示 指定的子字符串 是否出现在此字符串中。如果在此字符串中找到指定的子字符串,则返回 true,否则返回 false

语法

public bool Contains( string value )  

返回一个表示指定 string 对象是否出现在字符串中的值。

调用方法

string CjY = "ChenJie";  
string GjY = "C";
CjY.Contains(GjY);

CjYGjY 是变量,Contains() 是方法,用来对比 GjY 的值是不是存在于 CjY 中。此方法执行 区分大小写 的检查。搜索将始终从字符串的第一个字符位置开始,一直持续到最后一个字符位置。

五、float.TryParse 和 float.Parse 的异同 5

在 C# 编程过程中,float.TryParse 方法和 float.Parse 方法都可以将字符串 string 转换为单精度浮点类型 float,但两者还是有区别

最重要的区别

在于 float.TryParse 方法在字符串无法转换为 float 类型的情况下 不会 引发程序异常,而 float.Parse 方法则是直接抛出程序异常。

float.TryParse 方法在 无法转换 的情况下返回 false,并且使用了 out 参数进行转换。

  • float.TryParse 方法的签名为:
static bool TryParse(string s, out Single result)
  • float.Parse 方法的签名为:
static Single Parse(string s)

使用 float.TryParse 方法进行类型转换的时候,float 变量 无需 先行赋值,在调用 float.TryParse 方法后,将自动带出结果值。

Footnotes

  1. C# string.IsNullOrEmpty() 方法的使用

  2. Split 参数的使用

  3. C# 中 string 类使用 Replace 方法来替换字符串

  4. C# string 的 Contains() 方法

  5. float.TryParse 和 float.Parse 的异同