diff --git a/src/main/java/org/apache/commons/codec/language/ColognePhonetic.java b/src/main/java/org/apache/commons/codec/language/ColognePhonetic.java
index 3555e8e..049de1f 100644
--- a/src/main/java/org/apache/commons/codec/language/ColognePhonetic.java
+++ b/src/main/java/org/apache/commons/codec/language/ColognePhonetic.java
@@ -328,10 +328,10 @@
         char lastChar = CHAR_IGNORE;
         char chr;
 
-        while (input.length() > 0) {
+        while (!input.isEmpty()) {
             chr = input.removeNext();
 
-            if (input.length() > 0) {
+            if (!input.isEmpty()) {
                 nextChar = input.getNextChar();
             } else {
                 nextChar = CHAR_IGNORE;
diff --git a/src/main/java/org/apache/commons/codec/language/bm/Languages.java b/src/main/java/org/apache/commons/codec/language/bm/Languages.java
index 999acb9..778b072 100644
--- a/src/main/java/org/apache/commons/codec/language/bm/Languages.java
+++ b/src/main/java/org/apache/commons/codec/language/bm/Languages.java
@@ -184,7 +184,7 @@
                 } else {
                     if (line.startsWith(ResourceConstants.EXT_CMT_START)) {
                         inExtendedComment = true;
-                    } else if (line.length() > 0) {
+                    } else if (!line.isEmpty()) {
                         ls.add(line);
                     }
                 }
diff --git a/src/test/java/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java b/src/test/java/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java
index ee6444a..629c9ce 100644
--- a/src/test/java/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java
+++ b/src/test/java/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java
@@ -147,7 +147,7 @@
         encoder.setMaxPhonemes(10);
 
         final String phonemes = encoder.encode(phrase);
-        assertTrue(phonemes.length() > 0);
+        assertFalse(phonemes.isEmpty());
 
         final String[] phonemeArr = phonemes.split("\\|");
         assertTrue(phonemeArr.length <= 10);
