Java 我能';t在树映射中访问int[]
我有一个对象列表:Java 我能';t在树映射中访问int[],java,arrays,list,Java,Arrays,List,我有一个对象列表: static List table_rows = new ArrayList(); 我想用树形图填充它,树形图由一个字符串和一个整数数组对象组成: for (int i = 0; i < observation_files.length; i++) { TreeMap<String, Integer[]> tm = new TreeMap<String, Integer[]>(); Integer[] c
static List table_rows = new ArrayList();
我想用树形图填充它,树形图由一个字符串和一个整数数组对象组成:
for (int i = 0; i < observation_files.length; i++) {
TreeMap<String, Integer[]> tm = new TreeMap<String, Integer[]>();
Integer[] cells = new Integer[observation_files.length];
for (int x = 0; x < cells.length; x++) {
cells[x] = 0;
}
tm.put("model" + i, cells);
table_rows.add(tm);
}
但eclipse不允许我这样做,并给了我以下错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
The method get(String) is undefined for the type Object
Syntax error on token ".", Identifier expected after this token
at HmmPipeline.main(HmmPipeline.java:102)
代码提示或完成没有给我任何东西可以处理,我做错了什么?RawArrayList.get()
返回类型对象
。如果希望它返回TreeMap
,则应将列表声明为:
static List<TreeMap<String, Integer[]>> table_rows = new ArrayList<TreeMap<String, Integer[]>>();
static List table_rows=new ArrayList();
如果您使用像Eclipse这样的IDE,最好将代码编译选项设置为在使用原始(未参数化)类型时显示警告。尽管它应该把你的代码标记为无效
顺便说一句,您试图做的并不是一种非常有效的存储基本上是二维正方形数组的方法。RawArrayList.get()
返回typeObject
。如果希望它返回TreeMap
,则应将列表声明为:
static List<TreeMap<String, Integer[]>> table_rows = new ArrayList<TreeMap<String, Integer[]>>();
static List table_rows=new ArrayList();
如果您使用像Eclipse这样的IDE,最好将代码编译选项设置为在使用原始(未参数化)类型时显示警告。尽管它应该把你的代码标记为无效
顺便说一句,您试图做的并不是一种非常有效的存储基本上是二维正方形数组的方法。您需要强制转换
表行。获取(0)
到(树映射)
或在表行
声明中定义:
static List<TreeMap<String, Integer[]>> table_rows = new ArrayList<TreeMap<String, Integer[]>>();
static List table_rows=new ArrayList();
您需要将表格行强制转换为(0)
到(TreeMap)
或在表格行声明中定义:
static List<TreeMap<String, Integer[]>> table_rows = new ArrayList<TreeMap<String, Integer[]>>();
static List table_rows=new ArrayList();
试试看
static List table_rows=new ArrayList();
或者,您需要进行如下的演员阵容:
((TreeMap<String, Integer[]>)table_rows.get(0)).get("model1")[0] = 2;
((TreeMap)表_rows.get(0)).get(“model1”)[0]=2;
此外,根据您感兴趣的功能,您可以使用以下接口类型之一的引用来引用您的TreeMap
-
Map
NavigableMap
SortedMap
试试看
static List table_rows=new ArrayList();
或者,您需要进行如下的演员阵容:
((TreeMap<String, Integer[]>)table_rows.get(0)).get("model1")[0] = 2;
((TreeMap)表_rows.get(0)).get(“model1”)[0]=2;
此外,根据您感兴趣的功能,您可以使用以下接口类型之一的引用来引用您的TreeMap
-
Map
NavigableMap
SortedMap
1。您需要声明要使用的ArrayList的类型
static List<TreeMap<String, Integer[]>> table_rows = new ArrayList<TreeMap<String, Integer[]>>();
1。您需要声明要使用的ArrayList的类型
static List<TreeMap<String, Integer[]>> table_rows = new ArrayList<TreeMap<String, Integer[]>>();
我知道,但我需要能够根据字符串而不是索引号来寻址单元格。事实上,我最终得到了一排树映射,它们本身就在其中。我知道,但我需要能够根据字符串而不是索引号来寻址单元格。事实上,我最终拥有了一排排树,而树本身就是这样。