C# 中的字符串数组

WBOY
发布: 2024-09-03 15:12:04
原创
671 人浏览过

要理解C#中的字符串数组,我们首先要了解什么是数组和字符串。

Array:顺序存储的同类型变量的集合,每个变量都可以使用其索引号来访问。数组索引从零开始。

例如五个整数的数组

C# 中的字符串数组

字符串数组:它是一个字符串数组。就像员工姓名的字符串数组:字符串:字符数组。

C# 中的字符串数组

  1. 是固定的
  2. 可以是单个也可以是多个

声明语法

声明字符串数组有两种方法:

1.尺寸声明

通过使用 String 类对象:

String[] variable_name = new String[size];
登录后复制

通过使用字符串关键字:

string[] <em>variable_name </em>= new string[<em>size</em>];
登录后复制
登录后复制

2.无尺码声明

String[] variable_name;
登录后复制
string[] variable_name;
登录后复制

字符串数组的初始化

可以使用 new 关键字初始化字符串数组。如果不指定字符串数组的大小,我们就无法初始化它。初始化字符串数组有两种方法。

1.申报时:

string[] <em>variable_name </em>= new string[<em>size</em>];
登录后复制
登录后复制

2.声明后:

string [] <em>variable_name</em>; 
登录后复制
<em>variable_name </em>= new string[<em>size</em>];
登录后复制

赋值

字符串数组的值可以在初始化时或使用索引号分配。

示例:

string[] stringer = new stringArr[3]{"value1","value2","value3"};
登录后复制

或者

string[] stringArr = new stringArr[3]; 
登录后复制
stringArr[0] = "value1";
登录后复制
stringArr[1] = "value2"; 
登录后复制
stringArr[2] = "value3";
登录后复制

C# 中的字符串数组示例

部分示例如下:

1.使用索引号访问数组元素

代码:

using System;
public class StringArray
{
public static void Main()
{
// Array Declaration and Initialization
string[] stringArr = new string[3] {"value1", "value2", "value3"};
// Accessing elements using index
Console.WriteLine(stringArr[0]);
Console.WriteLine(stringArr[1]);
Console.WriteLine(stringArr[2]);
}
}
登录后复制

输出:

C# 中的字符串数组

2.使用 for 循环访问数组元素

代码:

using System;
public class StringArray
{
public static void Main()
{
// Array Declaration and Initialization
string[] stringArr= new string[3] {"element1", "element2", "element3"};
// Accessing elements using for loop
for(int i=0;i<stringArr.Length;i++)
{
Console.WriteLine(stringArr[i]);
}
}
}
登录后复制

输出:

C# 中的字符串数组

  1. 除此之外,我们还可以对字符串数组执行许多操作,例如搜索、排序、将字符串数组转换为字符串或将字符串转换为字符串数组等等。让我们在下面的示例中看到其中一些操作:
  2. 在字符串数组中搜索:有很多方法可以搜索单词,或者我们可以说在字符串数组中搜索字符串。一种是使用 Array 类的 Find() 方法。此方法返回数组中与指定谓词定义的条件相匹配的第一个元素

示例

代码:

using System;
public class StringSearch
{
public static void Main()
{
try {
// Creating and initializing string array of flower names
String[] flowerArr = new String[]{"Lily", "Jasmine", "Rose", "Sunflower"};
// Print values of the string array
Console.WriteLine("Flower names:");
for (int i = 0; i < flowerArr.Length; i++)
{
Console.WriteLine("{0}", flowerArr[i]);
}
Console.WriteLine();
//Search for flower name that starts with 'R'
string result = Array.Find(flowerArr, name => name.StartsWith("R", StringComparison.CurrentCultureIgnoreCase));
//Print result
Console.Write("Flower name starting with 'R': {0}", result);
}
catch (Exception e)
{
Console.Write("{0}", e.Message);
}
}
}
登录后复制

输出:

C# 中的字符串数组

在字符串数组中排序:我们可以通过多种方式对字符串数组进行排序。这里我们将使用 Array.Sort()

对其进行排序

示例:

代码:

using System;
public class StringSort
{
public static void Main()
{
try
{
// declaring and initializing string array
String[] stringArr = new String[] {"Cat", "Creature", "Culture", "Cow"};
// Sorting in ascending order.
Array.Sort(stringArr);
// reverse array to sort it in descending order
Array.Reverse(stringArr);
// print sorted array
foreach(string val in stringArr)
{
Console.Write(val + " ");
}
}
catch(Exception ex)
{
Console.Write(ex.Message);
}
}
}
登录后复制

输出:

C# 中的字符串数组

将字符串转换为字符串数组:我们可以轻松地将字符串转换为字符串数组,反之亦然,如下例所示:

示例:

代码:

using System;
public class StringToStringArray { public static void Main()
{
try
{
string str = "Hello world";
//convert string to string array
string[] strArr = new string[]{ str };
//print string array
foreach(string s in strArr)
{
Console.Write(s);
}
}
catch(Exception ex)
{
Console.Write(ex.Message);
}
}
}
登录后复制

输出:

C# 中的字符串数组

显示的输出不是字符串而是字符串数组。将字符串数组转换为字符串的示例:

using System;
public class StringArrayToString { public static void Main()
{
try{
}
string[] strArr = new string[2]; strArr[0] = "Good";
strArr[1] = "Morning!";
//converting string array to string
string str = string.Join("", strArr);
//print string
Console.WriteLine(str);
catch(Exception ex)
{
Console.Write(ex.Message);
}
}
}
登录后复制

输出:

 C# 中的字符串数组

字符串数组和字符串列表

从上面的例子中,我们可以说字符串数组与字符串列表非常相似。但它们之间有两个主要区别:

  1. 我们无法调整字符串数组 e 的大小。如果您有一个大小为 4 的字符串数组,则不能在其中添加 5 个元素。另一方面,列表可以随时调整大小,您可以在列表中添加任意数量的元素。
  2. 列表比数组慢,因此对字符串数组执行的操作将比

我们可以将字符串数组转换为列表,如下所示:

using System;
using System.Collections.Generic;
using System. Linq;
public class StringArrayToList
{
public static void Main()
{
string[] strArray = new string[]{ "string", "array", "to", "list"};
//converting string array to list
List<string> list = strArray.ToList();
//print list
foreach (string item in the list)
{
Console.WriteLine(item);
}
}
}
登录后复制

输出:

 C# 中的字符串数组

二维字符串数组

C# 还支持多维字符串数组,多维字符串数组最简单的形式是二维字符串数组。

示例:

代码:

using System;
public class TwoDimensionalArray
{
public static void Main()
{
string[,] strArr = new string[,]
{
{"Twenty", "Forty"},
{"Thirty", "Fifty"}
};
for (int i = 0; i <= strArr.GetUpperBound(0); i++)
{
string s1 = strArr[i, 0]; string s2 = strArr[i, 1];
Console.WriteLine("{0}, {1}", s1, s2);
}
}
}
登录后复制

输出:

C# 中的字符串数组

结论

  1. C#中的字符串数组用于在单个
  2. 下存储多个字符串
  3. 二维字符串数组用于表示任何矩阵类型
  4. 字符串数组的性能比其他用于存储的集合要快
  5. 他们很强

以上是C# 中的字符串数组的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板