数组、列表及字符串如何相互转换?

时间:2022-07-25
本文章向大家介绍数组、列表及字符串如何相互转换?,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

数组、列表及字符串如何相互转换?

—— 新手编程1001问之C#编程基础


数组、列表及字符串,是最常用的数据类型。为了操作方便,很多时候,需要进行相互转换。但它们的转换方法总是记不住,能不能帮我们总结一下,它们之间相互转换的方法。

好的,今天咱们就这个问题,稍微整理归纳一下,先创建如下三个实例:

1、数组

int[] arr = new int[3];
arr[0]=1;
arr[1]=2;
arr[2]=3;

2、列表

List<int> mylist = new List<int>();
mylist.Add(1);
mylist.Add(2);
mylist.Add(3);

3、字符串

string mystr = '1,2,3';

接下来,我们看看,数组、列表、字符串如何相互转换?

1、数组转换为列表

源数据:数组

int[] arr = new int[3];
arr[0]=1;
arr[1]=2;
arr[2]=3;

目标对象:列表

//创建一个列表实例
List<int> mylist = new List<int>();
//遍历数组
for(var i=0; i<arr.Length; i++)
{
    //将数组元素添加到列表    
    mylist.Add(arr[i]);
}

评语:

通过遍历数组,

获取每一个数组元素,

然后,

添加到列表。

2、数组转换为字符串

源数据:数组

int[] arr = new int[]{1,2,3};

目标对象:字符串

//调用转换函数
string mystr = String.Join(",",arr);
//遍历数组,拼接字符串
string mystr='';
for(var i=0; i<arr.Length; i++)
{
    //将数组元素添加到列表    
    mystr = (mystr!='') ? mystr + ',' + arr[i] : arr[i];
}

评语:

调用转换函数,

肯定是最简单的事情。

3、列表转换为数组

源数据:列表

List<int> mylist = new List<int>();
mylist.Add(1);
mylist.Add(2);
mylist.Add(3);

目标对象:数组

//直接有转换函数
int[] myarr = mylist.ToArray();

评语:

调用转换函数,一招搞定!

4、列表转换为字符串

源数据:列表

List<int> mylist = new List<int>();
mylist.Add(1);
mylist.Add(2);
mylist.Add(3);

目标对象:字符串

//1-列表转数组
string[] myarr = mylist.ToArray();
//2-数组转字符串
string mystr = String.Join(',',myarr);
//两次转换的嵌套写法
string mystr = String.Join(',',mylist.ToArray());

评语:

二次转换,曲线救国!

5、字符串转换为数组

源数据:字符串

string mystr = '1,2,3';

目标对象:数组

//得到一个字符串型的数组
string[] myarr = mystr.Split(',');

评语:

一定要注意:

括号里的分隔符!

6、字符串转换为列表

源数据:字符串

string mystr = '1,2,3';

目标对象:列表

//创建一个列表实例
List<int> mylist = new List<>();
//将字符串转换数组
string[] arr = mystr.Split(',');
//遍历数组
for(var i=0; i<arr.Length; i++)
{
    //将数组元素转换为int类型,再添加到列表    
    mylist.Add(Convert.ToInt32(arr[i]));
}

评语:

没有直接的转换函数,

先转数组;

再转列表。

注意目标类型!

好了,收藏今天的文章,今后就再也不用为数组、列表和字符串三者如何相互转换发愁了。