У меня есть этот if-statement, который при проверке с помощью JOptionPane.showMessageDialog (как видно в верхней части кода) возвращает false, но блок все еще выполняется. Я не вижу, что мне делать по-другому.
Переменные:Java boolean if-statement messes up
- с = GregorianCalendar
- S = Строка
- ч = HashMap-массив - String, Date
- oldGoods1, 2 и 3 = HashMaps - String, Date
Код:
JOptionPane.showMessageDialog(null, c.after((Date) h[counter].get(s)));
if(c.after((Date) h[counter].get(s))); //this line
{
Calendar today = Calendar.getInstance();
if(today.after((Date) h[counter].get(s)))
{
GoodsList.removeDate(s, (Date) h[counter].get(s));
}
if(!oldGoods1.containsKey(s))
{
oldGoods1.put(s, (Date) h[counter].get(s));
}
else if(!oldGoods2.containsKey(s))
{
oldGoods2.put(s, (Date) h[counter].get(s));
}
else if(!oldGoods3.containsKey(s))
{
oldGoods3.put(s, (Date) h[counter].get(s));
}
}
Спасибо заранее Highace2
У вас есть точка с запятой после вашего оператора if. Остальная часть вашего кода выполняется как блок. Довольно распространенная ошибка начинающего. – Perception