StringUtils { public static boolean isEmpty(final CharSequence str) { if (null == str) { return true; } for (int i = 0, n = str.length(); i < n; ++i) { if (Character.isWhitespace(str.charAt(i))) { continue; } return false; } return true; }  static boolean isEmpty(final CharSequence str); static int length(final CharSequence str); static boolean hasLength(final CharSequence str); static boolean hasText(final CharSequence str); static String nvl(final String... strs); static List<String> split(final String string, final String delimiter); static String split(final String string, final String delimiter, final int index); static String ltrim(final String str); static String rtrim(final String str); static String trim(final String str); static String join(final Iterable<?> values, final String token); static String join(final Object[] values, final String token); static String multiply(final String word, final int repeat); static void multiply(final StringBuilder buffer, final String word, final int repeat); static String repeat(final String word, final int repeat); static String uncapitalize(final String str); static int countMatches(final String str, final char ch); static String removePrefix(final String str, String prefix); static String removeSuffix(final String str, String suffix); static final String NULL_STRING; static final String EMPTY_STRING; }
@Test public void testIsEmpty() { final Object[][] testParameters = new Object[][] {{"", true}, {" ", true}, {"\n", true}, {"hello, world", false}}; for (final Object[] testParameter : testParameters) { boolean expected = (Boolean) testParameter[1]; CharSequence str = (CharSequence) testParameter[0]; assertEquals(expected, StringUtils.isEmpty(str)); } }
@Test public void shouldBeTrueOnNull() { assertTrue(StringUtils.isEmpty(null)); }