title: Issue with variable in a if/else loop in Java
body: <pre><code>import java.util.HashMap;
  
  public class Driver {
  public static void main(String[] args) {
      // TODO Auto-generated method stub
      String location = "memes more memes Virginia";
  
      String test = createStateMap(location);
      System.out.println(test);
  </code></pre>
  
  <p>}</p>
  
  <pre><code>public static String createStateMap(String loc) {
  
      loc = loc.toUpperCase();
      String secondLast; // Retrieves potential second to last value 
      String lastWord; // Retrieves last value 
      String state = "failed";
      String trimmed = loc.trim(); // Take off spaces at the end of String
      String o = trimmed.substring(0, trimmed.lastIndexOf(" ")); // Remove last Word in String   EX. "SOUTH CAROLINA" = "SOUTH"
      String otrim = o.trim(); // Take off spaces at the end of String
  
      if (trimmed.contains("/")){
      secondLast = otrim.substring(otrim.lastIndexOf("/")+1); 
      lastWord = trimmed.substring(trimmed.lastIndexOf("/")+1);
      } else { 
          secondLast = otrim.substring(otrim.lastIndexOf(" ")+1); 
          lastWord = trimmed.substring(trimmed.lastIndexOf(" ")+1);
      }
  
  
  
  
      HashMap&lt;String,String&gt; names = new HashMap&lt;String,String&gt;();
         names.put("ALABAMA", "AL");
         names.put("ALASKA", "AK");
         names.put("ARIZONA", "AZ");
         names.put("ARKANSAS", "AR");
         names.put("CALIFORNIA", "CA");
         names.put("COLORADO", "CO");
         names.put("CONNECTICUT", "CT");
         names.put("DELAWARE", "DE");
         names.put("FLORIDA", "FL");
         names.put("GEORGIA", "GA");
         names.put("HAWAII", "HI");
         names.put("IDAHO", "ID");
         names.put("ILLINOIS", "IL");
         names.put("INDIANA", "IN");
         names.put("IOWA", "IA");
         names.put("KANSAS", "KS");
         names.put("KENTUCKY", "KY");
         names.put("LOUISIANA", "LA");
         names.put("MAINE", "ME");
         names.put("MARYLAND", "MD");
         names.put("MASSACHUSETTS", "MA");
         names.put("MICHIGAN", "MI");
         names.put("MINNESOTA", "MN");
         names.put("MISSISSIPPI", "MS");
         names.put("MISSOURI", "MO");
         names.put("MONTANA", "MT");
         names.put("NEBRASKA", "NE");
         names.put("NEVADA", "NV");
         names.put("NEWHAMPSHIRE", "NH");
         names.put("JERSEY", "NJ");
         names.put("MEXICO", "NM");
         names.put("YORK", "NY");
         names.put("CAROLINA", "NC");
         names.put("DAKOTA", "ND");
         names.put("OHIO", "OH");
         names.put("OKLAHOMA", "OK");
         names.put("OREGON", "OR");
         names.put("PENNSYLVANIA", "PA");
         names.put("RHODEISLAND   ", "RI");
         names.put("CAROLINA", "SC");
         names.put("DAKOTA", "SD");
         names.put("TENNESSEE", "TN");
         names.put("TEXAS", "TX");
         names.put("UTAH", "UT");
         names.put("VERMONT", "VT");
         names.put("VIRGINIA", "VA");
         names.put("WASHINGTON", "WA");
         names.put("VIRGINIA", "WV");
         names.put("WISCONSIN", "WI");
         names.put("WYOMING", "WY");
  
         System.out.println(secondLast);
      if (names.containsValue(lastWord)){
          state = lastWord;
      } 
      if (names.containsKey(lastWord)){
          if (names.get(lastWord).equals("CAROLINA")){ // Differentiate NC and SC
              if (secondLast.equals("North")){
                  state = "NC";
              } else { state = "SC"; }
  
          } if (names.get(lastWord).equals("DAKOTA")) { // Differentiate ND and SD
              if (secondLast.equals("North")){
                  state = "ND";
              } else { state = "SD"; }
  
          } if (names.get(lastWord).equals("VIRGINIA")) { // Differentiate WV and VA
          if (secondLast.equals("West")){
                  state = "WV";
              } else { state = "VA"; }
  
          } else { state = names.get(lastWord); } 
          }
  
      return state;}  }
  </code></pre>
  
  <p>I am currently having issues with my code that assigns a state's abbreviations to a variable depending on the String passed into the parameter of the <code>createStateMap</code> method. When the <code>lastWord</code> String is either Virginia, Dakota, or Carolina they will always be assigned WV, ND, or NC- even if the <code>secondLast</code> is not North or West.</p>
  
  <p>Any help would be much appreciated, I have been stuck on this one for a while.</p>