java - 我可以用 Map<String, Integer> 覆盖 Map<Integer, Integer> 吗?

标签 java dictionary collections

我有以下类 AccountWebappGridRow,它扩展了 AccountGridRow:

public class AccountWebappGridRow<Accounts> extends AccountGridRow implements java.io.Serializable {

AccountGridRow 包含有这个字段:

private Map<Integer, Integer> balances;

使用公共(public) getter/setter:

public Map<Integer, Integer> getBalances() {
  return balances;
}

public void setBalances(Map<Integer, Integer> balances) {
   this.balances = balances;
}

有什么方法可以覆盖/替换继承的

private Map<Integer, Integer> balances;

在我的AccountWebappGridRow中...改为:

private Map<String, Integer> balances;

最佳答案

当然。您可以这样做……只要可以提供一个映射,该映射允许您将Integer 键转换为String 键。

换句话说:您的类(class)知道整数键和值。当然,您现在可以添加另一个使用相同值的 map 。唯一需要的是创建一个有意义的映射函数。 Meaningful 含义:符合您的要求的功能。我们不知道Map<String, Integer>是什么内容应该持有;所以我们无法在此处告诉您如何正确映射键!

最简单的答案可能是使用

String stringKey = someIntegerKey.toString();

回复

Integer integerKey = Integer.parseString(stringKey);

有了这些映射,您现在可以使用内部映射并创建一个再次使用整数的“结果”映射。

换句话说:您可以将新 map 添加到您的类(class);或者你可以完全重做你的类(class)并改变它 balances字段以使用不同的 key 。所有这些都只是“工作”——并且所有这些都依赖于定义您如何从 Integer 到 String 键;反之亦然。

关于java - 我可以用 Map<String, Integer> 覆盖 Map<Integer, Integer> 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44885280/

相关文章:

MongoDB引用错误: Collection is not defined :

java - 使用 Apache HttpComponent 解析 Http 响应(无实体)

java - 添加两个在java中声明为char类型的数字怎么可能?

python - 从作为列表的字典值中选择时,random.choice 不起作用

python - 如何按相同字段合并字典列表并在此过程中对另一个字段求​​和?

python - 如何在一行中将列表转换为索引和数据的字典(用于lambda)

java - 如何在 Maven 的 settings.xml 中为 HTTP 和 HTTPS 配置代理服务器?

Java 如何向下载的 CSV 添加新的空列

arrays - 如何在 Scala 中获取数组列表中两个元素的总和

java - 如何完成这个关于集合的java程序