title: How to switch two characters in a string?
body: <p>Given a string as input, return the string with its last 2 chars swapped. And, if the string has less than 2 chars, do nothing and return the input string.</p>
  
  <p>Here is the code I wrote so far:</p>
  
  <pre><code>public class SwapLastChars {
  
      static String testcase1 = "Hello";
  
      public static void main(String args[]) {
          SwapLastChars testInstance = new SwapLastChars();
          String result = testInstance.swap(testcase1);
          System.out.println(result);
      }
  
      public String swap(String str1) {
  
          String str = "";
          int length = str1.length();
          char last = str1.charAt(length - 1);
          char l = str1.charAt(length - 2);
          if (length == 1)
              return str1;
          for (int i = 0; i &lt; str1.length() - 2; i++) {
              str = str + str1.charAt(i);
          }
          str = str + last + l;
          return str;
      }
  }
  </code></pre>
  
  <p>Problem is in my test cases,any help?</p>
  
  <pre><code>Testcase    Pass/Fail   Parameters  Actual Output   Expected Output
  
  1           pass        'aabbccdd'      aabbccdd        aabbccdd
  
  2           fail        'A'             null            A
  
  3           pass        'hello'         helol           helol
  </code></pre>