I need to convert full state name to its official state address code. For example from the String New York, I need to produce NY. Now I could put this all in a hashmap, bu
This is the updated version with Codes for United States (US) and US Territories, Canada, and Mexico. This is a 2-way map. As such, this provides names for the given codes and vice-versa. Scroll down to see both options.
private static final Map stateCodeToNameMap = new HashMap<>();
private static final Map stateNameToCodeMap = new HashMap<>();
static {
// Load US Codes.
stateCodeToNameMap.put("AK", "Alaska");
stateCodeToNameMap.put("AL", "Alabama");
stateCodeToNameMap.put("AR", "Arkansas");
stateCodeToNameMap.put("AZ", "Arizona");
stateCodeToNameMap.put("CA", "California");
stateCodeToNameMap.put("CO", "Colorado");
stateCodeToNameMap.put("CT", "Connecticut");
stateCodeToNameMap.put("DC", "District of Columbia");
stateCodeToNameMap.put("DE", "Delaware");
stateCodeToNameMap.put("FL", "Florida");
stateCodeToNameMap.put("GA", "Georgia");
stateCodeToNameMap.put("HI", "Hawaii");
stateCodeToNameMap.put("IA", "Iowa");
stateCodeToNameMap.put("ID", "Idaho");
stateCodeToNameMap.put("IL", "Illinois");
stateCodeToNameMap.put("IN", "Indiana");
stateCodeToNameMap.put("KS", "Kansas");
stateCodeToNameMap.put("KY", "Kentucky");
stateCodeToNameMap.put("LA", "Louisiana");
stateCodeToNameMap.put("MA", "Massachusetts");
stateCodeToNameMap.put("MD", "Maryland");
stateCodeToNameMap.put("ME", "Maine");
stateCodeToNameMap.put("MI", "Michigan");
stateCodeToNameMap.put("MN", "Minnesota");
stateCodeToNameMap.put("MO", "Missouri");
stateCodeToNameMap.put("MS", "Mississippi");
stateCodeToNameMap.put("MT", "Montana");
stateCodeToNameMap.put("NC", "North Carolina");
stateCodeToNameMap.put("ND", "North Dakota");
stateCodeToNameMap.put("NE", "Nebraska");
stateCodeToNameMap.put("NH", "New Hampshire");
stateCodeToNameMap.put("NJ", "New Jersey");
stateCodeToNameMap.put("NM", "New Mexico");
stateCodeToNameMap.put("NV", "Nevada");
stateCodeToNameMap.put("NY", "New York");
stateCodeToNameMap.put("OH", "Ohio");
stateCodeToNameMap.put("OK", "Oklahoma");
stateCodeToNameMap.put("OR", "Oregon");
stateCodeToNameMap.put("PA", "Pennsylvania");
stateCodeToNameMap.put("RI", "Rhode Island");
stateCodeToNameMap.put("SC", "South Carolina");
stateCodeToNameMap.put("SD", "South Dakota");
stateCodeToNameMap.put("TN", "Tennessee");
stateCodeToNameMap.put("TX", "Texas");
stateCodeToNameMap.put("UT", "Utah");
stateCodeToNameMap.put("VA", "Virginia");
stateCodeToNameMap.put("VT", "Vermont");
stateCodeToNameMap.put("WA", "Washington");
stateCodeToNameMap.put("WI", "Wisconsin");
stateCodeToNameMap.put("WV", "West Virginia");
stateCodeToNameMap.put("WY", "Wyoming");
stateCodeToNameMap.put("GU", "Guam");
stateCodeToNameMap.put("VI", "Virgin Islands");
stateCodeToNameMap.put("PR", "Puerto Rico");
stateCodeToNameMap.put("AE", "Armed forces - Europe");
stateCodeToNameMap.put("AA", "Armed forces - America");
stateCodeToNameMap.put("AP", "Armed forces - Pacific");
// Load Canada Codes.
stateCodeToNameMap.put("AB", "Alberta");
stateCodeToNameMap.put("BC", "British Columbia");
stateCodeToNameMap.put("MB", "Manitoba");
stateCodeToNameMap.put("NB", "New Brunswick");
stateCodeToNameMap.put("NL", "Newfoundland and Labrador");
stateCodeToNameMap.put("NT", "Northwest Territories");
stateCodeToNameMap.put("NS", "Nova Scotia");
stateCodeToNameMap.put("NU", "Nunavut");
stateCodeToNameMap.put("ON", "Ontario");
stateCodeToNameMap.put("PE", "Prince Edward Island");
stateCodeToNameMap.put("QC", "Quebec");
stateCodeToNameMap.put("SK", "Saskatchewan");
stateCodeToNameMap.put("YT", "Yukon");
// Load México Codes.
stateCodeToNameMap.put("AGU", "Aguascalientes");
stateCodeToNameMap.put("BCN", "Baja California");
stateCodeToNameMap.put("BCS", "Baja California Sur");
stateCodeToNameMap.put("CAM", "Campeche");
stateCodeToNameMap.put("CHP", "Chiapas");
stateCodeToNameMap.put("CHH", "Chihuahua");
stateCodeToNameMap.put("COA", "Coahuila");
stateCodeToNameMap.put("COL", "Colima");
stateCodeToNameMap.put("DIF", "Distrito Federal");
stateCodeToNameMap.put("DUR", "Durango");
stateCodeToNameMap.put("GUA", "Guanajuato");
stateCodeToNameMap.put("GRO", "Guerrero");
stateCodeToNameMap.put("HID", "Hidalgo");
stateCodeToNameMap.put("JAL", "Jalisco");
stateCodeToNameMap.put("MEX", "México");
stateCodeToNameMap.put("MIC", "Michoacán");
stateCodeToNameMap.put("MOR", "Morelos");
stateCodeToNameMap.put("NAY", "Nayarit");
stateCodeToNameMap.put("NLE", "Nuevo León");
stateCodeToNameMap.put("OAX", "Oaxaca");
stateCodeToNameMap.put("PUE", "Puebla");
stateCodeToNameMap.put("QUE", "Querétaro");
stateCodeToNameMap.put("ROO", "Quintana Roo");
stateCodeToNameMap.put("SLP", "San Luis Potosí");
stateCodeToNameMap.put("SIN", "Sinaloa");
stateCodeToNameMap.put("SON", "Sonora");
stateCodeToNameMap.put("TAB", "Tabasco");
stateCodeToNameMap.put("TAM", "Tamaulipas");
stateCodeToNameMap.put("TLA", "Tlaxcala");
stateCodeToNameMap.put("VER", "Veracruz");
stateCodeToNameMap.put("YUC", "Yucatán");
stateCodeToNameMap.put("ZAC", "Zacatecas");
// Load US State Names.
stateNameToCodeMap.put("Alabama","AL");
stateNameToCodeMap.put("Alaska","AK");
stateNameToCodeMap.put("Arizona","AZ");
stateNameToCodeMap.put("Arkansas","AR");
stateNameToCodeMap.put("California","CA");
stateNameToCodeMap.put("Colorado","CO");
stateNameToCodeMap.put("Connecticut","CT");
stateNameToCodeMap.put("Delaware","DE");
stateNameToCodeMap.put("District Of Columbia","DC");
stateNameToCodeMap.put("Florida","FL");
stateNameToCodeMap.put("Georgia","GA");
stateNameToCodeMap.put("Hawaii","HI");
stateNameToCodeMap.put("Idaho","ID");
stateNameToCodeMap.put("Illinois","IL");
stateNameToCodeMap.put("Indiana","IN");
stateNameToCodeMap.put("Iowa","IA");
stateNameToCodeMap.put("Kansas","KS");
stateNameToCodeMap.put("Kentucky","KY");
stateNameToCodeMap.put("Louisiana","LA");
stateNameToCodeMap.put("Maine","ME");
stateNameToCodeMap.put("Maryland","MD");
stateNameToCodeMap.put("Massachusetts","MA");
stateNameToCodeMap.put("Michigan","MI");
stateNameToCodeMap.put("Minnesota","MN");
stateNameToCodeMap.put("Mississippi","MS");
stateNameToCodeMap.put("Missouri","MO");
stateNameToCodeMap.put("Montana","MT");
stateNameToCodeMap.put("Nebraska","NE");
stateNameToCodeMap.put("Nevada","NV");
stateNameToCodeMap.put("New Hampshire","NH");
stateNameToCodeMap.put("New Jersey","NJ");
stateNameToCodeMap.put("New Mexico","NM");
stateNameToCodeMap.put("New York","NY");
stateNameToCodeMap.put("North Carolina","NC");
stateNameToCodeMap.put("North Dakota","ND");
stateNameToCodeMap.put("Ohio","OH");
stateNameToCodeMap.put("Oklahoma","OK");
stateNameToCodeMap.put("Oregon","OR");
stateNameToCodeMap.put("Pennsylvania","PA");
stateNameToCodeMap.put("Rhode Island","RI");
stateNameToCodeMap.put("South Carolina","SC");
stateNameToCodeMap.put("South Dakota","SD");
stateNameToCodeMap.put("Tennessee","TN");
stateNameToCodeMap.put("Texas","TX");
stateNameToCodeMap.put("Utah","UT");
stateNameToCodeMap.put("Vermont","VT");
stateNameToCodeMap.put("Virginia","VA");
stateNameToCodeMap.put("Washington","WA");
stateNameToCodeMap.put("West Virginia","WV");
stateNameToCodeMap.put("Wisconsin","WI");
stateNameToCodeMap.put("Wyoming","WY");
stateNameToCodeMap.put("Guam", "GU");
stateNameToCodeMap.put("Puerto Rico","PR");
stateNameToCodeMap.put("Virgin Islands","VI");
stateNameToCodeMap.put("Armed Forces (AE)","AE");
stateNameToCodeMap.put("Armed Forces Americas","AA");
stateNameToCodeMap.put("Armed Forces Pacific","AP");
// Load Canada State Names.
stateNameToCodeMap.put("Alberta","AB");
stateNameToCodeMap.put("British Columbia","BC");
stateNameToCodeMap.put("Manitoba","MB");
stateNameToCodeMap.put("New Brunswick","NB");
stateNameToCodeMap.put("Newfoundland and Labrador","NF");
stateNameToCodeMap.put("Northwest Territories","NT");
stateNameToCodeMap.put("Nova Scotia","NS");
stateNameToCodeMap.put("Nunavut","NU");
stateNameToCodeMap.put("Ontario","ON");
stateNameToCodeMap.put("Prince Edward Island","PE");
stateNameToCodeMap.put("Quebec","QC");
stateNameToCodeMap.put("Saskatchewan","SK");
stateNameToCodeMap.put("Yukon Territory","YT");
// Load México State Names.
stateNameToCodeMap.put("Aguascalientes", "AGU");
stateNameToCodeMap.put("Baja California", "BCN");
stateNameToCodeMap.put("Baja California Sur", "BCS");
stateNameToCodeMap.put("Campeche", "CAM");
stateNameToCodeMap.put("Chiapas", "CHP");
stateNameToCodeMap.put("Chihuahua", "CHH");
stateNameToCodeMap.put("Coahuila", "COA");
stateNameToCodeMap.put("Colima", "COL");
stateNameToCodeMap.put("Distrito Federal", "DIF");
stateNameToCodeMap.put("Durango", "DUR");
stateNameToCodeMap.put("Guanajuato", "GUA");
stateNameToCodeMap.put("Guerrero", "GRO");
stateNameToCodeMap.put("Hidalgo", "HID");
stateNameToCodeMap.put("Jalisco", "JAL");
stateNameToCodeMap.put("México", "MEX");
stateNameToCodeMap.put("Michoacán", "MIC");
stateNameToCodeMap.put("Morelos", "MOR");
stateNameToCodeMap.put("Nayarit", "NAY");
stateNameToCodeMap.put("Nuevo León", "NLE");
stateNameToCodeMap.put("Oaxaca", "OAX");
stateNameToCodeMap.put("Puebla", "PUE");
stateNameToCodeMap.put("Querétaro", "QUE");
stateNameToCodeMap.put("Quintana Roo", "ROO");
stateNameToCodeMap.put("San Luis Potosí", "SLP");
stateNameToCodeMap.put("Sinaloa", "SIN");
stateNameToCodeMap.put("Sonora", "SON");
stateNameToCodeMap.put("Tabasco", "TAB");
stateNameToCodeMap.put("Tamaulipas", "TAM");
stateNameToCodeMap.put("Tlaxcala", "TLA");
stateNameToCodeMap.put("Veracruz", "VER");
stateNameToCodeMap.put("Yucatán", "YUC");
stateNameToCodeMap.put("Zacatecas", "ZAC");
}