问题描述
我正在尝试找到一种使用资源包的方法,如果找不到密钥,可能会出现某种回退。 目前我发现的唯一方法是捕获异常:
try {
resourceBundle.getString(key);
} catch (MissingResourceException ex) {
return defaultValue;
}
是否有更好的解决方案来解决这个问题(类似于 getorDefault
中的 Map
)?也许另一个具有更好 API 的库?
解决方法
并不是每个数据结构都支持这样的方法。在您的情况下,您通常会使用 containsKey
方法检查是否包含密钥。
在代码中将异常捕获为“正常”流程并不是我所说的体面架构。