我将C#代码转换为Java代码。
ArrayList用在那个C#代码中。
我应该直接在Java代码中使用ArrayList for C#ArrayList吗?
当我直接使用时,我收到此警告:
ArrayList是原始类型。对泛型类型ArrayList的引用 应该参数化。
我应该做些什么改变?
我的C#Arraylist:
private System.Collections.ArrayList _lines = new System.Collections.ArrayList();
public System.Collections.ArrayList Lines
{
get { return lines; }
}
感谢。
答案 0 :(得分:2)
ArrayList 需要进行参数化。您必须定义数据类型。请参阅以下行以声明ArrayList
List<String> arrayList = new ArrayList<String>();
arrayList.add("item1");
...
答案 1 :(得分:2)
ArrayList
也可用于 Java 。
请参阅Javadocs here以及其他教程here
import java.util.*;
public class ArrayListDemo {
public static void main(String args[]) {
// create an array list
ArrayList al = new ArrayList();
System.out.println("Initial size of al: " + al.size());
// add elements to the array list
al.add("C");
al.add("A");
al.add("E");
al.add("B");
al.add("D");
al.add("F");
al.add(1, "A2");
System.out.println("Size of al after additions: " + al.size());
// display the array list
System.out.println("Contents of al: " + al);
// Remove elements from the array list
al.remove("F");
al.remove(2);
System.out.println("Size of al after deletions: " + al.size());
System.out.println("Contents of al: " + al);
}
}
答案 2 :(得分:1)
如果您想进行更多或更少的1对1转化,那么您可以使用ArrayList<Object>
:
ArrayList<Object> arrayList = new ArrayList<Object>();
它允许您在不重写的情况下转换代码。
但我建议使用相应集合的通用版本,无论是Java还是C#代码。确定列表中存储的行的类型,并将其用作泛型集合的类型参数:
ArrayList<Line> arrayList = new ArrayList<Line>();