我已经更新了Android Studio的所有内容,现在我的TreeMap有点......不同?
我不知道我正在使用什么API级别,但似乎无论何时我想调用TreeMap模板的put方法,我都需要为它提供一些返回值的东西。
换句话说,在过去,我可以:
TreeMap<LicenseNumber,Car> carsToStoreInMechnizedLot = new TreeMap<LicenseNumber,Car>();
carsToStoreInMechnizedLot.put("6CAL146","clubCar");
现在我必须:
TreeMap<LicenseNumber,Car> carsToStoreInMechnizedLot = new TreeMap<LicenseNumber,Car>();
Car carReturnVal = carsToStoreInMechnizedLot.put("6CAL146","clubCar");
这很奇怪?特别是如果你认为返回值不代表“成功”或“不成功”,而是树上最后一个元素的值?
我做了一件极其错误的事吗?
答案 0 :(得分:1)
每当我想调用TreeMap模板的put方法时,我 需要提供一些东西才能将值返回
Java并不强制您使用方法调用的返回
但是当您使用Android Studio时,每次构建都会运行lint和IDE检查。
lint和IDE检查的严重程度可能会产生错误警告
他们的目标是改进您的代码。
在许多情况下,这是有道理的。但在其他一些人中,并非如此
在您的情况下,使用Map.put()
的返回值很大程度上取决于处理的要求
因此,如果您不需要使用返回的值,则不应遵守此规则,但应禁止此警告或禁用此规则。
有关Improve Your Code with Lint的更多信息。
答案 1 :(得分:0)
TreeMap put方法的签名如下。实际上它在Map界面中。
public V put(K key,
V value)
如果您不需要使用TreeMap返回的先前值,您可以简单地忽略它,而不是分配给任何变量。