Man*_*ndo 40 .net c# .net-micro-framework
下面的ArrayList可以直接初始化而不需要aFileExt字符串数组吗?
private static string[] aFileExt =
{"css", "gif", "htm", "html", "txt", "xml" };
private System.Collections.ArrayList alFileTypes =
new System.Collections.ArrayList(aFileExt);
Run Code Online (Sandbox Code Playgroud)
下面的行是目标,但我的.Net编译器不喜欢它:
private static System.Collections.ArrayList alFileTypes =
new System.Collections.ArrayList({"css","gif","htm","html","txt","xml"});
Run Code Online (Sandbox Code Playgroud)
我正在使用.net Micro Framework,因此无法访问泛型类型.
Jon*_*eet 68
C#1或2:
private static ArrayList alFileTypes =
new ArrayList(new string[] {"css","gif","htm","html","txt","xml"});
Run Code Online (Sandbox Code Playgroud)
C#3使用隐式类型数组:
private static ArrayList alFileTypes =
new ArrayList(new[] {"css","gif","htm","html","txt","xml"});
Run Code Online (Sandbox Code Playgroud)
C#3使用集合初始化程序:
private static ArrayList alFileTypes =
new ArrayList{"css","gif","htm","html","txt","xml"};
Run Code Online (Sandbox Code Playgroud)
或者创建自己的帮助方法:
public static ArrayList CreateList(params object[] items)
{
return new ArrayList(items);
}
Run Code Online (Sandbox Code Playgroud)
然后:
static ArrayList alFileTypes = CreateList("css","gif","htm","html","txt","xml");
Run Code Online (Sandbox Code Playgroud)
您没有使用通用集合的原因,顺便说一下?
Ada*_*son 13
如果你使用的是.NET 2.0或更高版本,你应该使用泛型List<T>
类型(即使它是List<object>
,它会给你相同的功能ArrayList
).
如果您使用的是.NET 3.5或更高版本,则可以使用以下语法:
private static List<string> fileTypes = new List<string>()
{
"css","gif","htm","html","txt","xml"
};
Run Code Online (Sandbox Code Playgroud)
无论哪种方式,如果你想坚持下去ArrayList
,你可以这样做:
private static System.Collections.ArrayList alFileTypes =
new System.Collections.ArrayList(new object[] {"css","gif","htm","html","txt","xml"});
Run Code Online (Sandbox Code Playgroud)
C#3.0带有泛型List<T>
,而不是ArrayList
:
private static List<string> alFileTypes =
new List<string> {"css","gif","htm","html","txt","xml"};
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
59954 次 |
最近记录: |