[英]dynamic 2 dimensional array
我有一個可以創建值列表的程序。 (字符串,雙精度型,雙精度型,雙精度型)我想將這些值存儲在數組,向量或數組為array [x] [4]的數組中。 我怎樣才能做到這一點?
您可以使用Object
數組的ArrayList
:
例如
List<Object[]> list = new ArrayList<Object[]>();
list.add(new Object[]{"string", 2d, 1d, 0d});
更新 :
可以按如下方式打印它們(因為我們知道數組元素是String
和Double
:
for(Object[] row : list) {
System.out.println(row[0] + " " + row[1] + " " + row[2] + " " + row[3]);
}
但我確實相信,在這里將類用於OOP會更好。
為簡單起見:
創建具有四個字段的數據對象類:
class MyDataObject {
String firstParameter;
double secondParameter;
double thirdParameter;
double fourthParameter;
}
然后將此對象存儲在List中:
List<MyDataObject> = new ArrayList<MyDataObject>();
如果您的類存在於同一java文件中(因此它位於同一包中)-由於默認的包可見性訪問,您可以避免使用訪問器。
如果創建一個類並在其中聲明這四個字段並將該類的對象存儲到ArrayList
中,該怎么辦,如以下示例所示。
final class DemoClass
{
String str="";
double a;
double b;
double c;
public DemoClass(String str, double a, double b, double c)
{
this.str=str;
this.a=a;
this.b=b;
this.c=c;
}
public void doSomething()
{
//...
}
}
final public class Main
{
public static void main(String...args)
{
DemoClass dc=new DemoClass("SomeStrValue", 1, 2, 3);
List<DemoClass>list=new ArrayList<DemoClass>();
list.add(dc);
}
}
我認為這樣會更容易。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.