C# 在C中将对象数组强制转换为另一种类型的简单方法#
我希望能够快速将对象数组强制转换为其他类型,例如字符串,但以下代码不起作用:C# 在C中将对象数组强制转换为另一种类型的简单方法#,c#,arrays,C#,Arrays,我希望能够快速将对象数组强制转换为其他类型,例如字符串,但以下代码不起作用: String[] a = new String[2]; a[0] = "Hello"; a[1] = "World"; ArrayList b = new ArrayList(a); String[] c = (String[]) b.ToArray(); 我不想这样做: String[] a = new String[2]; a[0] = "Hello"; a[1] = "World"; ArrayList b =
String[] a = new String[2];
a[0] = "Hello";
a[1] = "World";
ArrayList b = new ArrayList(a);
String[] c = (String[]) b.ToArray();
我不想这样做:
String[] a = new String[2];
a[0] = "Hello";
a[1] = "World";
ArrayList b = new ArrayList(a);
Object[] temp = b.ToArray();
String[] c = new String[temp.Length];
for(int i=0;i<temp.Length;i++)
{
c[i] = (String) temp[i];
}
String[]a=新字符串[2];
a[0]=“你好”;
a[1]=“世界”;
ArrayList b=新的ArrayList(a);
对象[]温度=b.ToArray();
字符串[]c=新字符串[临时长度];
对于(int i=0;i使用LINQ:
String[] c = b.Cast<String>().ToArray();
String[]c=b.Cast().ToArray();
请允许我问一下,为什么您首先要使用ArrayList
,而不是通用集合类型?使用LINQ:
String[] c = b.Cast<String>().ToArray();
String[]c=b.Cast().ToArray();
我可以问一下,为什么您首先要使用ArrayList
,而不是一般的集合类型吗?您可以这样做
myArray.Select(mySomething => new SomethingElse(mySomething)).ToArray()
若要将其转换为任何您喜欢的内容:)您可以执行以下操作
myArray.Select(mySomething => new SomethingElse(mySomething)).ToArray()
要将其转换为任何您喜欢的内容:)最好的解决方案是使用列表最好的解决方案是使用列表
<1作为通用集合,例如列表
,-1用于ArrayList
哪个最好放在樟脑球上。+1用于像List
这样的通用集合,-1用于ArrayList
哪个最好放在樟脑球上。伙计,人们停止使用ArrayList
需要多长时间?嘿,我还是C的新手。我应该使用什么替代?使用泛型集合代替ArrayList。泛型是完全类型安全的,ArrayList是不可能的。我希望我的评论没有被误解。这只是我最讨厌的问题之一。实际上,这是一个很好的问题,而泛型有时根本没有帮助。假设有一段通用代码运行在一个列表上,还有一段更具体的代码需要一个列表。现在,另一段代码使用这两种方法。你会怎么做?即使你在商店里到处使用泛型。伙计,人们停止使用ArrayList
需要多长时间?嘿,我还是个新手。我应该使用什么替代?使用泛型集合代替ArrayList。泛型是完全类型安全的,ArrayList是不可能的。我希望我的评论没有被误解。这只是我最讨厌的问题之一。实际上,这是一个很好的问题,而泛型有时根本没有帮助。假设有一段通用代码运行在一个列表上,还有一段更具体的代码需要一个列表。现在,另一段代码使用这两种方法。你会怎么做?即使你在商店里到处使用仿制药……欢迎来到一个新世界;)非常值得你去思考泛型……欢迎来到一个新世界;)这是非常值得你去思考的泛型。