BAEL-1525: More changes.
This commit is contained in:
parent
604f5b1535
commit
6887bc10d1
|
@ -8,7 +8,33 @@ public class Palindrome {
|
||||||
int forward = 0;
|
int forward = 0;
|
||||||
int backward = length - 1;
|
int backward = length - 1;
|
||||||
boolean palindrome = true;
|
boolean palindrome = true;
|
||||||
while ((backward > forward)?(palindrome=(text.charAt(forward++) == text.charAt(backward--))):false);
|
while (backward > forward) {
|
||||||
|
char forwardChar = text.charAt(forward++);
|
||||||
|
char backwardChar = text.charAt(backward--);
|
||||||
|
if (forwardChar != backwardChar)
|
||||||
|
return false;
|
||||||
|
}
|
||||||
return palindrome;
|
return palindrome;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isPalindromeReverseTheString(String text) {
|
||||||
|
String reverse = "";
|
||||||
|
text = text.toLowerCase();
|
||||||
|
char[] plain = text.toCharArray();
|
||||||
|
for (int i = plain.length - 1; i >= 0; i--)
|
||||||
|
reverse += plain[i];
|
||||||
|
return reverse.equals(text);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isPalindromeUsingStringBuilder(String text) {
|
||||||
|
StringBuilder plain = new StringBuilder(text);
|
||||||
|
StringBuilder reverse = plain.reverse();
|
||||||
|
return reverse.equals(plain);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isPalindromeUsingStringBuffer(String text) {
|
||||||
|
StringBuffer plain = new StringBuffer(text);
|
||||||
|
StringBuffer reverse = plain.reverse();
|
||||||
|
return reverse.equals(plain);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,4 +34,40 @@ public class WhenCheckingPalindrome {
|
||||||
for(String sentence:sentences)
|
for(String sentence:sentences)
|
||||||
Assert.assertTrue(palindrome.isPalindrome(sentence));
|
Assert.assertTrue(palindrome.isPalindrome(sentence));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whenReverseWord_shouldBePalindrome() {
|
||||||
|
for(String word:words)
|
||||||
|
Assert.assertTrue(palindrome.isPalindromeReverseTheString(word));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whenReverseSentence_shouldBePalindrome() {
|
||||||
|
for(String sentence:sentences)
|
||||||
|
Assert.assertTrue(palindrome.isPalindromeReverseTheString(sentence));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whenStringBuilderWord_shouldBePalindrome() {
|
||||||
|
for(String word:words)
|
||||||
|
Assert.assertTrue(palindrome.isPalindromeUsingStringBuilder(word));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whenStringBuilderSentence_shouldBePalindrome() {
|
||||||
|
for(String sentence:sentences)
|
||||||
|
Assert.assertTrue(palindrome.isPalindromeUsingStringBuilder(sentence));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whenStringBufferWord_shouldBePalindrome() {
|
||||||
|
for(String word:words)
|
||||||
|
Assert.assertTrue(palindrome.isPalindromeUsingStringBuffer(word));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whenStringBufferSentence_shouldBePalindrome() {
|
||||||
|
for(String sentence:sentences)
|
||||||
|
Assert.assertTrue(palindrome.isPalindromeUsingStringBuffer(sentence));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue