是否有一个Util将美国国家名称转换为州代码。 例如。 亚利桑那到AZ?

我需要将完整的州名转换为官方的州地址代码。 例如从纽约弦乐队,我需要产生纽约。 现在我可以把这一切都放在一个hashmap,但似乎必须有一个实用程序呢? 我在Android环境中。 但是我不想为这个util导入一个大型库。 谢谢

Solutions Collecting From Web of "是否有一个Util将美国国家名称转换为州代码。 例如。 亚利桑那到AZ?"

我已经准备好了 – 你可以使用它:

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"); 

我知道这不能回答这个问题,但为了防止有人需要相反的话:使用州/省的缩写作为键和名称作为值。 我花了几分钟时间来重新设置地图的格式。 而且,在接受的答案中魁北克省的缩写是错误的。

 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"); } 

用代码和值构build一个Map<String, String> ,操作简单,数据非常less。 这个没有“实用工具”,它对于你正在构build的应用程序是非常具体的。

我认为最简单的方法是使用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); } 

这是与美国(美国)和美国领土,加拿大和墨西哥的代码的更新版本。 这是一个双向的地图。 为给定代码提供名称,反之亦然。 向下滚动两个选项。

 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", "Akansas"); 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"); stateNameToCodeMap.put("VI", "Virgin Islands"); stateNameToCodeMap.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"); } 

我不这么认为(至less我从来没有听说过)。 但是你总是可以用一个字典来完成。

更好的使用枚举。

 import java.util.HashMap; 

import java.util.Map;

公共枚举状态{

 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; } 

}