数组、列表及字符串,是最常用的数据类型。为了操作方便,很多时候,需要进行相互转换。但它们的转换方法总是记不住,能不能帮我们总结一下,它们之间相互转换的方法。
好的,今天咱们就这个问题,稍微整理归纳一下,先创建如下三个实例:
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]));
}
评语:
没有直接的转换函数,
先转数组;
再转列表。
注意目标类型!
好了,收藏今天的文章,今后就再也不用为数组、列表和字符串三者如何相互转换发愁了。