我有一个 HashMap 中的条目列表,一个作为键的字符串和一个作为值的 Long。我正在尝试检查该值是否大于某个数字,但我不确定如何获取该值并进行检查。
我知道这是不正确的,但这可能比我能解释的更清楚我的意思:
long offlineTimeLimit = (offlineTimeLimitConfig*1000);
long limit = (offlineTimeLimit + System.currentTimeMillis());
Long playerName = playerTimeCheck.get(p);
if (playerTimeCheck.containsValue( > limit)) {
}
这将获取允许玩家离线的时间量 offlimeTimeLimitConfig,然后乘以 1000(因此以毫秒为单位),然后添加当前时间。我想检查哈希图中的任何值是否大于当前时间加上时间限制,然后执行代码。
我一直在做研究,我找到了其他存储数据的方法(如 TreeMap),但我不确定这是否是存储数据的更好方法。
这是其余的代码:
String p = event.getPlayer().getName();
HashMap<String, Long> playerTimeCheck = new HashMap<String, Long>();
ConfigurationSection section = getConfig().getConfigurationSection("PlayerTime");
long currentTime = System.currentTimeMillis();
String playerCheck = getConfig().getString("PlayerTime");
for (String key : section.getKeys(false)) {
playerTimeCheck.put(key, section.getLong(key));
}
感谢您的帮助,科尔比