我需要创建一个类型为 - (long,String)的列表 喜欢 -
ArrayList a = new ArrayList();
a.add(1L,branchName);
我该怎么做呢,因为如果我使用list它将只接受int,String。
答案 0 :(得分:3)
您应该注意ArrayList
的{{1}}在给定的int索引中添加String元素(如果索引有效)。 add(int,String)
参数不属于int
。
也许ArrayList
不是您的正确选择。如果您希望将ArrayList
键映射到Long
值,请使用String
。
Map<Long,String>
答案 1 :(得分:2)
您可以定义自定义类,例如
@Repository
public interface DBSettingRepository extends JpaRepository<DBSetting, Long>{}
然后将此实例添加到ArrayList:
class IndexAndBranchName {
long index;
String branchName;
}
您是否使用此方法或类似Eran的方法取决于您随后使用该列表所需的内容:
ArrayList<IndexAndBranchName> a = new ArrayList<>();
a.add(new IndexAndBranchName(index, branchName));
;但是,每个键只能存储一个值;如果你想要每个键有多个值,你可以使用Guava Map
或类似的。答案 2 :(得分:1)
您可以使用以下代码解决问题。
HashMap也是一个更好的选择,但是如果你只想要ArrayList则使用它。
List<Map<Object, Object>> mylist = new ArrayList<Map<Object, Object>>();
Map map = new HashMap<>();
map.put(1L, "BranchName");
mylist.add(map);