import java.util.HashMap;
public class Solution549_LongestHarmony {
public int findLHS(int[] nums) {
int longest = 0;
HashMap<Integer, Integer> map = new HashMap<>();
//fill the map
for (Integer i : nums) {
map.containsKey(i) ? map.replace(i, map.get(i) + 1) : map.put(i, 1);
}
for (Integer i : nums) {
if (map.containsKey(i + 1)) {
longest = Math.max(longest, map.get(i) + map.get(i + 1));
}
}
if (map != null) {
map.remove(2);
}
return longest;
}
}
错误信息:
Line 7: error: not a statement
map.containsKey(i) ? map.replace(i, map.get(i)+1):map.put(i,1);
1条答案
按热度按时间wlsrxk511#
正如@pm 77-1所指出的,错误消息清楚地表明
不是一个语句,而是一个表达式。您需要使用表达式值的赋值或方法调用才能使语句成功编译。
因此,您可以使用如下语句填充Map