Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否存在将美国州名称转换为州代码的Util。亚利桑那州到亚利桑那州?_Java_Android - Fatal编程技术网

Java 是否存在将美国州名称转换为州代码的Util。亚利桑那州到亚利桑那州?

Java 是否存在将美国州名称转换为州代码的Util。亚利桑那州到亚利桑那州?,java,android,Java,Android,我需要将全州名转换为州官方地址代码。例如,从字符串“纽约”,我需要生成NY。现在我可以把这一切都放在一个hashmap中,但似乎必须有一个实用程序?我在一个Android环境中。然而,我不想只为这一个导入一个大型库。感谢用代码和值构建一个地图,操作简单,数据很少。这方面没有“实用程序”,它非常适合您正在构建的应用程序。我不这么认为(至少我从未听说过)。但是你总是可以使用字典来完成这一点。我认为最简单的方法是使用HashMap。即使有一个库来转换它,它也可能使用相同的东西 Map<Strin

我需要将全州名转换为州官方地址代码。例如,从字符串“纽约”,我需要生成NY。现在我可以把这一切都放在一个hashmap中,但似乎必须有一个实用程序?我在一个Android环境中。然而,我不想只为这一个导入一个大型库。感谢

用代码和值构建一个
地图
,操作简单,数据很少。这方面没有“实用程序”,它非常适合您正在构建的应用程序。

我不这么认为(至少我从未听说过)。但是你总是可以使用字典来完成这一点。

我认为最简单的方法是使用HashMap。即使有一个库来转换它,它也可能使用相同的东西

Map<String, String> states = new HashMap<String, String>();
states.put("Arizona", "AZ");
states.put("California", "CA");
// So on and so forth...

// Then you could create a method like
public String toStateCode(String s) {
    return states.get(s);
}
Map states=newhashmap();
州。出售(“亚利桑那州”、“亚利桑那州”);
加利福尼亚州(“加利福尼亚州”、“加利福尼亚州”);
//诸如此类。。。
//然后你可以创建一个方法,比如
公共字符串到状态代码(字符串s){
返回状态。获取(s);
}

我已经准备好了-您可以使用它:

Map<String, String> states = new HashMap<String, String>();
states.put("Alabama","AL");
states.put("Alaska","AK");
states.put("Alberta","AB");
states.put("American Samoa","AS");
states.put("Arizona","AZ");
states.put("Arkansas","AR");
states.put("Armed Forces (AE)","AE");
states.put("Armed Forces Americas","AA");
states.put("Armed Forces Pacific","AP");
states.put("British Columbia","BC");
states.put("California","CA");
states.put("Colorado","CO");
states.put("Connecticut","CT");
states.put("Delaware","DE");
states.put("District Of Columbia","DC");
states.put("Florida","FL");
states.put("Georgia","GA");
states.put("Guam","GU");
states.put("Hawaii","HI");
states.put("Idaho","ID");
states.put("Illinois","IL");
states.put("Indiana","IN");
states.put("Iowa","IA");
states.put("Kansas","KS");
states.put("Kentucky","KY");
states.put("Louisiana","LA");
states.put("Maine","ME");
states.put("Manitoba","MB");
states.put("Maryland","MD");
states.put("Massachusetts","MA");
states.put("Michigan","MI");
states.put("Minnesota","MN");
states.put("Mississippi","MS");
states.put("Missouri","MO");
states.put("Montana","MT");
states.put("Nebraska","NE");
states.put("Nevada","NV");
states.put("New Brunswick","NB");
states.put("New Hampshire","NH");
states.put("New Jersey","NJ");
states.put("New Mexico","NM");
states.put("New York","NY");
states.put("Newfoundland","NF");
states.put("North Carolina","NC");
states.put("North Dakota","ND");
states.put("Northwest Territories","NT");
states.put("Nova Scotia","NS");
states.put("Nunavut","NU");
states.put("Ohio","OH");
states.put("Oklahoma","OK");
states.put("Ontario","ON");
states.put("Oregon","OR");
states.put("Pennsylvania","PA");
states.put("Prince Edward Island","PE");
states.put("Puerto Rico","PR");
states.put("Quebec","QC");
states.put("Rhode Island","RI");
states.put("Saskatchewan","SK");
states.put("South Carolina","SC");
states.put("South Dakota","SD");
states.put("Tennessee","TN");
states.put("Texas","TX");
states.put("Utah","UT");
states.put("Vermont","VT");
states.put("Virgin Islands","VI");
states.put("Virginia","VA");
states.put("Washington","WA");
states.put("West Virginia","WV");
states.put("Wisconsin","WI");
states.put("Wyoming","WY");
states.put("Yukon Territory","YT");
Map states=newhashmap();
州。put(“阿拉巴马州”、“阿尔卑斯州”);
州。put(“阿拉斯加”、“AK”);
州。put(“阿尔伯塔省”、“AB省”);
国家。put(“美属萨摩亚”、“AS”);
州。出售(“亚利桑那州”、“亚利桑那州”);
州。put(“阿肯色州”、“AR”);
国家。put(“武装部队(AE)”,“AE”);
国家。put(“美洲武装部队”、“AA”);
国家。put(“太平洋武装部队”、“亚太地区”);
州。put(“不列颠哥伦比亚省”、“不列颠哥伦比亚省”);
加利福尼亚州(“加利福尼亚州”、“加利福尼亚州”);
州。出售(“科罗拉多州”、“科罗拉多州”);
州。put(“康涅狄格州”、“CT”);
州。出售(“特拉华州”、“德州”);
州。put(“哥伦比亚特区”);
佛罗里达州(“佛罗里达州”、“佛罗里达州”);
州。put(“格鲁吉亚”、“GA”);
国家。put(“关岛”、“古”);
美国。把(“夏威夷”,“你好”);
州。出售(“爱达荷州”、“ID”);
州。出售(“伊利诺伊州”、“伊利诺伊州”);
州。投入(“印第安纳州”);
州。付诸表决(“爱荷华州”、“爱荷华州”);
州。put(“堪萨斯州”、“堪萨斯州”);
州。put(“肯塔基州”、“肯塔基州”);
州。put(“路易斯安那州”、“洛杉矶”);
美国。put(“缅因州”、“我”);
州。put(“马尼托巴省”、“MB”);
州。put(“马里兰州”、“马里兰州”);
州。put(“马萨诸塞州”、“马萨诸塞州”);
州。put(“密歇根州”、“密歇根州”);
州。出售(“明尼苏达州”、“明尼苏达州”);
州。put(“密西西比州”、“MS”);
州。put(“密苏里州”、“密苏里州”);
州。put(“蒙大拿州”、“MT”);
州。put(“内布拉斯加州”、“东北”);
州。出售(“内华达州”、“内华达州”);
州。put(“新不伦瑞克省”、“NB”);
州。put(“新罕布什尔州”、“新罕布什尔州”);
州。put(“新泽西州”、“新泽西州”);
州。出售(“新墨西哥州”、“新墨西哥州”);
美国。出售(“纽约”、“纽约”);
州。出售(“纽芬兰”、“NF”);
州。出售(“北卡罗来纳州”、“北卡罗来纳州”);
州。put(“北达科他州”、“ND”);
州。put(“西北地区”、“新界”);
州。put(“新斯科舍省”、“NS”);
国家。put(“努纳武特”、“努尔”);
俄亥俄州;
州。出售(“俄克拉何马州”、“俄克拉何马州”);
国家。投入(“安大略省”、“投入”);
州。出售(“俄勒冈州”、“或”);
州。put(“宾夕法尼亚州”、“宾夕法尼亚州”);
州。put(“爱德华王子岛”、“PE”);
州。put(“波多黎各”、“PR”);
州。put(“魁北克省”、“QC”);
州。put(“罗德岛州”、“国际扶轮”);
国家。put(“萨斯喀彻温省”、“SK”);
州。put(“南卡罗来纳州”、“南卡罗来纳州”);
州。put(“南达科他州”、“SD”);
州。出售(“田纳西州”、“田纳西州”);
州。出售(“德克萨斯州”、“德克萨斯州”);
犹他州、犹他州、犹他州;
州。put(“佛蒙特州”、“VT”);
国家。put(“维尔京群岛”、“六”);
弗吉尼亚州(“弗吉尼亚州”、“弗吉尼亚州”);
州。put(“华盛顿州”、“华盛顿州”);
州。put(“西弗吉尼亚州”、“西弗吉尼亚州”);
威斯康星州(“威斯康星州”、“威斯康星州”);
州。出售(“怀俄明州”、“怀俄明州”);
州。put(“育空地区”、“YT”);

我知道这并不能回答问题,但只是为了防止有人需要相反的答案:使用州/省缩写作为键,使用名称作为值。我花了几分钟重新格式化地图。此外,公认答案中魁北克的缩写是错误的

public static final Map<String, String> STATE_MAP;
static {
    STATE_MAP = new HashMap<String, String>();
    STATE_MAP.put("AL", "Alabama");
    STATE_MAP.put("AK", "Alaska");
    STATE_MAP.put("AB", "Alberta");
    STATE_MAP.put("AZ", "Arizona");
    STATE_MAP.put("AR", "Arkansas");
    STATE_MAP.put("BC", "British Columbia");
    STATE_MAP.put("CA", "California");
    STATE_MAP.put("CO", "Colorado");
    STATE_MAP.put("CT", "Connecticut");
    STATE_MAP.put("DE", "Delaware");
    STATE_MAP.put("DC", "District Of Columbia");
    STATE_MAP.put("FL", "Florida");
    STATE_MAP.put("GA", "Georgia");
    STATE_MAP.put("GU", "Guam");
    STATE_MAP.put("HI", "Hawaii");
    STATE_MAP.put("ID", "Idaho");
    STATE_MAP.put("IL", "Illinois");
    STATE_MAP.put("IN", "Indiana");
    STATE_MAP.put("IA", "Iowa");
    STATE_MAP.put("KS", "Kansas");
    STATE_MAP.put("KY", "Kentucky");
    STATE_MAP.put("LA", "Louisiana");
    STATE_MAP.put("ME", "Maine");
    STATE_MAP.put("MB", "Manitoba");
    STATE_MAP.put("MD", "Maryland");
    STATE_MAP.put("MA", "Massachusetts");
    STATE_MAP.put("MI", "Michigan");
    STATE_MAP.put("MN", "Minnesota");
    STATE_MAP.put("MS", "Mississippi");
    STATE_MAP.put("MO", "Missouri");
    STATE_MAP.put("MT", "Montana");
    STATE_MAP.put("NE", "Nebraska");
    STATE_MAP.put("NV", "Nevada");
    STATE_MAP.put("NB", "New Brunswick");
    STATE_MAP.put("NH", "New Hampshire");
    STATE_MAP.put("NJ", "New Jersey");
    STATE_MAP.put("NM", "New Mexico");
    STATE_MAP.put("NY", "New York");
    STATE_MAP.put("NF", "Newfoundland");
    STATE_MAP.put("NC", "North Carolina");
    STATE_MAP.put("ND", "North Dakota");
    STATE_MAP.put("NT", "Northwest Territories");
    STATE_MAP.put("NS", "Nova Scotia");
    STATE_MAP.put("NU", "Nunavut");
    STATE_MAP.put("OH", "Ohio");
    STATE_MAP.put("OK", "Oklahoma");
    STATE_MAP.put("ON", "Ontario");
    STATE_MAP.put("OR", "Oregon");
    STATE_MAP.put("PA", "Pennsylvania");
    STATE_MAP.put("PE", "Prince Edward Island");
    STATE_MAP.put("PR", "Puerto Rico");
    STATE_MAP.put("QC", "Quebec");
    STATE_MAP.put("RI", "Rhode Island");
    STATE_MAP.put("SK", "Saskatchewan");
    STATE_MAP.put("SC", "South Carolina");
    STATE_MAP.put("SD", "South Dakota");
    STATE_MAP.put("TN", "Tennessee");
    STATE_MAP.put("TX", "Texas");
    STATE_MAP.put("UT", "Utah");
    STATE_MAP.put("VT", "Vermont");
    STATE_MAP.put("VI", "Virgin Islands");
    STATE_MAP.put("VA", "Virginia");
    STATE_MAP.put("WA", "Washington");
    STATE_MAP.put("WV", "West Virginia");
    STATE_MAP.put("WI", "Wisconsin");
    STATE_MAP.put("WY", "Wyoming");
    STATE_MAP.put("YT", "Yukon Territory");
}
公共静态最终地图状态\u地图;
静止的{
STATE_MAP=new HashMap();
州地图放置(“AL”、“阿拉巴马”);
州地图放置(“AK”,“阿拉斯加”);
州地图放置(“AB”、“阿尔伯塔”);
州地图放置(“亚利桑那州”、“亚利桑那州”);
州地图放置(“AR”、“阿肯色州”);
州地图放置(“BC”,“不列颠哥伦比亚”);
州地图放置(“加利福尼亚州”、“加利福尼亚州”);
州地图放置(“CO”,“科罗拉多”);
州地图放置(“CT”,“康涅狄格州”);
州地图放置(“德”,“特拉华州”);
州地图放置(“DC”、“哥伦比亚特区”);
州地图放置(“佛罗里达州”、“佛罗里达州”);
州地图放置(“乔治亚州”、“乔治亚州”);
国家地图放置(“古”、“关岛”);
州地图放置(“嗨”,“夏威夷”);
州地图放置(“ID”,“爱达荷州”);
州地图放置(“伊利诺伊州”、“伊利诺伊州”);
州地图放置(“IN”,“Indiana”);
州地图放置(“IA”、“爱荷华州”);
州地图放置(“堪萨斯州”、“堪萨斯州”);
州地图放置(“肯塔基州”、“肯塔基州”);
州地图放置(“洛杉矶”、“路易斯安那”);
州地图放置(“我”、“缅因州”);
州地图放置(“MB”,“马尼托巴省”);
州地图放置(“马里兰州”、“马里兰州”);
州地图放置(“MA”,“马萨诸塞州”);
州地图放置(“MI”、“密歇根”);
州地图放置(“明尼苏达州”、“明尼苏达州”);
州地图放置(“MS”、“密西西比”);
州地图(密苏里州);
州地图放置(“蒙大拿州”、“蒙大拿州”);
州地图放置(“东北”、“内布拉斯加州”);
州地图放置(“内华达州”、“内华达州”);
州地图放置(“NB”、“新不伦瑞克”);
州地图(新罕布什尔州、新罕布什尔州);
州地图放置(“新泽西州”、“新泽西州”);
州地图放置(“NM”、“新墨西哥”);
州地图放置(“纽约”、“纽约”);
州地图放置(“NF”、“纽芬兰”);
州地图放置(“北卡罗来纳州”、“北卡罗来纳州”);
州地图放置(“ND”,“北达科他州”);
州地图(新界、西北地区);
州地图放置(“NS”、“新斯科舍省”);
州地图放置(“NU”、“Nunavut”);
州地图(俄亥俄州);
州地图(俄克拉何马州);
州地图放在(“安大略省”);
州地图放置(“或”、“俄勒冈州”);
州地图放置(“宾夕法尼亚州”、“宾夕法尼亚州”);
州地图放置(“PE”,“爱德华王子岛”);
州地图放置(“PR”、“波多黎各”);
州地图放置(“QC”、“魁北克”);
州地图放置(“RI”,“罗德岛”);
州地图放置(“SK”、“萨斯喀彻温省”);
州地图放置(“南卡罗来纳州”、“南卡罗来纳州”);
州地图放置(“SD”,“南达科他州”);
州地图放置(“田纳西州”、“田纳西州”);
州地图放置(“德克萨斯州”、“德克萨斯州”);
州地图放置(“UT”、“犹他州”);
州地图放置(“VT”,“佛蒙特州”);
private static final Map<String, String> stateCodeToNameMap = new HashMap<>();

private static final Map<String, String> 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");
}
import java.util.HashMap;
import java.util.Map;

public enum State {

    ALABAMA("Alabama", "AL"), ALASKA("Alaska", "AK"), AMERICAN_SAMOA("American Samoa", "AS"), ARIZONA("Arizona", "AZ"), ARKANSAS(
    "Arkansas", "AR"), CALIFORNIA("California", "CA"), COLORADO("Colorado", "CO"), CONNECTICUT("Connecticut", "CT"), DELAWARE(
    "Delaware", "DE"), DISTRICT_OF_COLUMBIA("District of Columbia", "DC"), FEDERATED_STATES_OF_MICRONESIA(
    "Federated States of Micronesia", "FM"), FLORIDA("Florida", "FL"), GEORGIA("Georgia", "GA"), GUAM("Guam", "GU"), HAWAII(
    "Hawaii", "HI"), IDAHO("Idaho", "ID"), ILLINOIS("Illinois", "IL"), INDIANA("Indiana", "IN"), IOWA("Iowa", "IA"), KANSAS(
    "Kansas", "KS"), KENTUCKY("Kentucky", "KY"), LOUISIANA("Louisiana", "LA"), MAINE("Maine", "ME"), MARYLAND("Maryland", "MD"), MARSHALL_ISLANDS(
    "Marshall Islands", "MH"), MASSACHUSETTS("Massachusetts", "MA"), MICHIGAN("Michigan", "MI"), MINNESOTA("Minnesota", "MN"), MISSISSIPPI(
    "Mississippi", "MS"), MISSOURI("Missouri", "MO"), MONTANA("Montana", "MT"), NEBRASKA("Nebraska", "NE"), NEVADA("Nevada",
    "NV"), NEW_HAMPSHIRE("New Hampshire", "NH"), NEW_JERSEY("New Jersey", "NJ"), NEW_MEXICO("New Mexico", "NM"), NEW_YORK(
    "New York", "NY"), NORTH_CAROLINA("North Carolina", "NC"), NORTH_DAKOTA("North Dakota", "ND"), NORTHERN_MARIANA_ISLANDS(
    "Northern Mariana Islands", "MP"), OHIO("Ohio", "OH"), OKLAHOMA("Oklahoma", "OK"), OREGON("Oregon", "OR"), PALAU("Palau",
    "PW"), PENNSYLVANIA("Pennsylvania", "PA"), PUERTO_RICO("Puerto Rico", "PR"), RHODE_ISLAND("Rhode Island", "RI"), SOUTH_CAROLINA(
    "South Carolina", "SC"), SOUTH_DAKOTA("South Dakota", "SD"), TENNESSEE("Tennessee", "TN"), TEXAS("Texas", "TX"), UTAH(
    "Utah", "UT"), VERMONT("Vermont", "VT"), VIRGIN_ISLANDS("Virgin Islands", "VI"), VIRGINIA("Virginia", "VA"), WASHINGTON(
    "Washington", "WA"), WEST_VIRGINIA("West Virginia", "WV"), WISCONSIN("Wisconsin", "WI"), WYOMING("Wyoming", "WY"), UNKNOWN(
    "Unknown", "");

    /**
     * The state's name.
     */
    private String name;

    /**
     * The state's abbreviation.
     */
    private String abbreviation;

    /**
     * The set of states addressed by abbreviations.
     */
    private static final Map<String, State> STATES_BY_ABBR = new HashMap<String, State>();

    /* static initializer */
    static {
        for (State state : values()) {
            STATES_BY_ABBR.put(state.getAbbreviation(), state);
        }
    }

    /**
     * Constructs a new state.
     *
     * @param name the state's name.
     * @param abbreviation the state's abbreviation.
     */
    State(String name, String abbreviation) {
        this.name = name;
        this.abbreviation = abbreviation;
    }

    /**
     * Returns the state's abbreviation.
     *
     * @return the state's abbreviation.
     */
    public String getAbbreviation() {
        return abbreviation;
    }

    /**
     * Gets the enum constant with the specified abbreviation.
     *
     * @param abbr the state's abbreviation.
     * @return the enum constant with the specified abbreviation.
     * @throws SunlightException if the abbreviation is invalid.
     */
    public static State valueOfAbbreviation(final String abbr) {
        final State state = STATES_BY_ABBR.get(abbr);
        if (state != null) {
            return state;
        } else {
            return UNKNOWN;
        }
    }

    public static State valueOfName(final String name) {
        final String enumName = name.toUpperCase().replaceAll(" ", "_");
        try {
            return valueOf(enumName);
        } catch (final IllegalArgumentException e) {
            return State.UNKNOWN;
        }
    }

    @Override
    public String toString() {
        return name;
    }
}
public enum State {

    AK("AK", "Alaska"),
    AL("AL", "Alabama"),
    AR("AR", "Arkansas"),
    AZ("AZ", "Arizona"),
    CA("CA", "California"),
    CO("CO", "Colorado"),
    CT("CT", "Connecticut"),
    DE("DE", "Delaware"),
    FL("FL", "Florida"),
    GA("GA", "Georgia"),
    HI("HI", "Hawaii"),
    IA("IA", "Iowa"),
    ID("ID", "Idaho"),
    IL("IL", "Illinois"),
    IN("IN", "Indiana"),
    KS("KS", "Kansas"),
    KY("KY", "Kentucky"),
    LA("LA", "Louisiana"),
    MA("MA", "Massachusetts"),
    MD("MD", "Maryland"),
    ME("ME", "Maine"),
    MI("MI", "Michigan"),
    MN("MN", "Minnesota"),
    MO("MO", "Missouri"),
    MS("MS", "Mississippi"),
    MT("MT", "Montana"),
    NC("NC", "NorthCarolina"),
    ND("ND", "NorthDakota"),
    NE("NE", "Nebraska"),
    NH("NH", "NewHampshire"),
    NJ("NJ", "NewJersey"),
    NM("NM", "NewMexico"),
    NV("NV", "Nevada"),
    NY("NY", "NewYork"),
    OH("OH", "Ohio"),
    OK("OK", "Oklahoma"),
    OR("OR", "Oregon"),
    PA("PA", "Pennsylvania"),
    RI("RI", "RhodeIsland"),
    SC("SC", "SouthCarolina"),
    SD("SD", "SouthDakota"),
    TN("TN", "Tennessee"),
    TX("TX", "Texas"),
    UT("UT", "Utah"),
    VA("VA", "Virginia"),
    VT("VT", "Vermont"),
    WA("WA", "Washington"),
    WI("WI", "Wisconsin"),
    WV("WV", "WestVirginia"),
    WY("WY", "Wyoming");

    private final String key;
    private final String value;

    State(String key, String value) {
        this.key = key;
        this.value = value;
    }
}