程序中有段代码以前运行正常,JDK升级到1.8以后发现数据不显示,debug后发下下面语句运行不对:
if (parentMenu.getMenuId() == childMenu.getParentId())
改成下面这样才能正确运行:
if (parentMenu.getMenuId().equals(childMenu.getParentId()))
原因是数据为Long型,跟String一样得用equals()方法才能判断是否一致。可能是1.8版本以后对数据验证变严格了。
程序中有段代码以前运行正常,JDK升级到1.8以后发现数据不显示,debug后发下下面语句运行不对:
if (parentMenu.getMenuId() == childMenu.getParentId())
改成下面这样才能正确运行:
if (parentMenu.getMenuId().equals(childMenu.getParentId()))
原因是数据为Long型,跟String一样得用equals()方法才能判断是否一致。可能是1.8版本以后对数据验证变严格了。