亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> C语言

C# 字符串

C# 字符串

在本教程中,我们将通过示例了解 C# 字符串及其方法。

在 C# 中,字符串是一个字符序列。例如,"hello" 是一个包含一系列字符 'h' 的字符串 , 'e' , 'l' , 'l' , 和 'o' .

我们使用 string 关键字来创建一个字符串。例如,

// create a string
string str = "C# Programming";

在这里,我们创建了一个 string 命名为 str 并分配文本 "C# Programming" .我们在 C# 中使用双引号来表示字符串。


示例:在 C# 中创建字符串

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {
      
      // create string
      string str1 = "C# Programming";
      string str2 = "Programiz";
      
      // print string
      Console.WriteLine(str1);
      Console.WriteLine(str2);

      Console.ReadLine();
    }
  } 
}

输出

C# Programming
Programiz

在上面的示例中,我们创建了两个名为 str1 的字符串 和 str2 并打印出来。

注意 :C# 中的字符串变量不是像 int 这样的原始类型 , char 等。相反,它是 String 的对象 类。


字符串操作

C# string 提供了各种方法来对字符串执行不同的操作。我们将研究一些常用的字符串操作。

1。获取字符串的长度

要查找字符串的长度,我们使用 Length 财产。例如,

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {

      // create string
      string str = "C# Programming";
      Console.WriteLine("string: " + str);
      
      // get length of str
      int length = str.Length;     
      Console.WriteLine("Length: "+ length);

      Console.ReadLine();
    }
  } 
}

输出

string: C# Programming
Length: 14

在上面的例子中,Length 属性计算字符串中的字符总数并返回。


2。在 C# 中连接两个字符串

我们可以在 C# 中使用 Concat() 连接两个字符串 方法。例如,

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {

      // create string
      string str1 = "C# ";
      Console.WriteLine("string str1: " + str1);

      // create string
      string str2 = "Programming";
      Console.WriteLine("string str2: " + str2);
      
      // join two strings
      string joinedString = string.Concat(str1, str2);
      Console.WriteLine("Joined string: " + joinedString);

      Console.ReadLine();
    }
  } 
}

输出

string str1: C#
string str2: Programming
Joined string: C# Programming

在上面的示例中,我们创建了两个名为 str1 的字符串 和 str2 .注意声明,

string joinedString = string.Concat(str1, str2);

在这里,Concat() 方法加入 str1str2 并将其分配给 joinedString 变量。

我们还可以使用 + 连接两个字符串 C# 中的运算符。要了解更多信息,请访问 C# string Concat .


3。 C#比较两个字符串

在 C# 中,我们可以使用 Equals() 来比较两个字符串 方法。 Equals() 方法检查两个字符串是否相等。例如,

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {

      // create string
      string str1 = "C# Programming";
      string str2 = "C# Programming";
      string str3 = "Programiz";
      
      // compare str1 and str2
      Boolean result1 = str1.Equals(str2);
      Console.WriteLine("string str1 and str2 are equal: " + result1);

      //compare str1 and str3
      Boolean result2 = str1.Equals(str3);
      Console.WriteLine("string str1 and str3 are equal: " + result2);     

      Console.ReadLine();
    }
  } 
}

输出

string str1 and str2 are equal: True
string str1 and str3 are equal: False

在上面的示例中,我们创建了 3 个名为 str1 的字符串 , str2 , 和 str3 .在这里,我们使用 Equals() 检查一个字符串是否等于另一个字符串的方法。


字符串对象的不变性

在 C# 中,字符串是不可变的。这意味着,一旦我们创建了一个字符串,就无法更改该字符串。

为了理解它,考虑一个例子:

// create string
string str = "Hello ";

在这里,我们创建了一个名为 str 的字符串变量 .该变量包含字符串 "Hello " .

现在假设我们要更改字符串 str .

// add another string "World"
// to the previous string example
str = string.Concat(str, "World");

在这里,我们使用 Concat() 添加字符串 "World" 的方法 到前一个字符串 str .

但是当字符串是不可变的时,我们如何修改它们呢?

让我们看看这里发生了什么,

  1. C# 取字符串 "Hello " 的值 .
  2. 通过添加 "World" 创建一个新字符串 到字符串 "Hello " .
  3. 创建一个新的字符串对象,给它一个值"Hello World" , 并将其存储在 str .
  4. 原始字符串,"Hello " , 分配给 str 被释放以进行垃圾回收,因为没有其他变量持有对它的引用。

字符串转义序列

转义字符用于转义字符串中存在的一些字符。换句话说,我们使用转义序列在字符串中插入特殊字符。

假设我们需要在字符串中包含双引号。

// include double quote
string str = "This is the "String" class";

由于字符串用双引号表示,编译器会将 "This is the " 作为字符串。而且上面的代码会报错。

为了解决这个问题,我们使用转义字符 \" 在 C# 中。例如,

// use the escape character
string str = "This is the \"String\" class.";

现在使用 \ 在双引号 " 之前 ,我们可以将它包含在字符串中。

C#中的一些转义序列如下:

转义序列 角色名称
\' 单引号
\" 双引号
\\ 反斜杠
\0
\n 换行
\t 横向标签

字符串插值

在 C# 中,我们可以使用字符串插值在字符串中插入变量。对于字符串插值,字符串文字必须以 $ 开头 特点。例如,

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {

      // create string
      string name = "Programiz";

      // string interpolation
      string message = $"Welcome to {name}";
      Console.WriteLine(message);

      Console.ReadLine();
    }
  } 
}

输出

Welcome to Programiz

在上面的例子中,我们使用 name message 中的变量 字符串。

string message = $"Welcome to {name}";

请注意,


C#字符串的方法

C# 中有多种字符串方法。其中一些如下:

方法 说明
Format() 返回一个格式化的字符串
Split() 将字符串拆分为子字符串
Substring() 返回字符串的子字符串
Compare() 比较字符串对象
Replace() 用指定的新字符替换指定的旧字符
Contains() 检查字符串是否包含子字符串
Join() 使用指定的分隔符连接给定的字符串
Trim() 删除所有前导和尾随空格
EndsWith() 检查字符串是否以给定字符串结尾
IndexOf() 返回指定字符在字符串中的位置
Remove() 从字符串中返回字符
ToUpper() 将字符串转换为大写
ToLower() 将字符串转换为小写
PadLeft() 返回用空格或左侧指定的Unicode字符填充的字符串
PadRight()
返回用空格或右侧指定的Unicode字符填充的字符串
StartsWith() 检查字符串是否以给定字符串开头
ToCharArray() 将字符串转换为 char 数组
LastIndexOf()
返回指定字符串最后一次出现的索引

常见问题

1.如何在C#中创建字符串数组?

字符串数组的创建方式与数据类型数组的创建方式相同。例如,

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {

      // array of string type
      string[] animals = {"Monkey", "Dog", "Cat"};

      // print array elements
      Console.WriteLine(animals[0]);
      Console.WriteLine(animals[1]);
      Console.WriteLine(animals[2]);

      Console.ReadLine();
    }
  } 
}

输出

Monkey
Dog
Cat
2. C#中string和String的区别

string 之间没有技术上的区别 和 String .在 C# 中,字符串是 System.String 的别名 .

推荐使用string 因为即使没有 using System; 也能正常工作 .


C语言

  1. Java 字符串
  2. Java 枚举字符串
  3. C++ 字符串:strcpy()、strcat()、strlen()、strcmp() 示例
  4. C 中的字符串:如何声明变量、初始化、打印、示例
  5. Java String charAt() 方法及示例
  6. Java String endsWith() 方法及示例
  7. Python String strip() 函数与示例
  8. 带有示例的 Python 字符串计数()
  9. Python String format() 举例说明
  10. Python 字符串长度 | len() 方法示例
  11. Python String find() 方法及示例
  12. Java 8 - 概述