对于String,Java isEmpty()是否未定义?

我正在使用eclipse中的一个学校项目,当我尝试在String上使用isEmpty()方法时,Eclipse会显示以下错误:

对于String类型,方法isEmpty()未定义

我已经运行了Java更新,但仍然可以使用它。 这个方法未定义的原因是什么?

String.isEmpty()是在Java 6中添加的。 在早期版本中,您可以使用Apache的commons-lang库中的StringUtils.isEmpty(String)

要配置Eclipse以使用1.6 JRE,请转到Window-> Preferences-> Java-> Installed JREs。 如果您尚未配置JAva 1.6,请选择添加… ,浏览到1.6安装并添加它。

安装了JREs截图

配置JREs截图http://www.lumidant.com/blog/wp-content/uploads/2008/01/eclipse_edit_jre.png

如果您不在Java 6上,String.length()== 0将返回与String.isEmpty()相同的结果。

String.isEmpty()是在Java 1.6版中引入的。 您可能想要检查您正在为项目使用的JDK版本。 (我自己对Eclipse知之甚少,但它应该在项目设置中的某个位置。)

我在一个大项目中遇到了这个问题,所有以前的设置都是使用Java 8(通用和项目级编译器设置)。 解决方案是移动到受影响项目的构建路径中“订单和导出”选项卡中的“JRE系统库[jre1.8.0]”。