Set POJO for Gson when JSON key has a dash
问题 The JSON string is: { "translation": ["some words"], "basic": { "us-phonetic": "'flæbɚɡæstɪd", "phonetic": "'flæbɚɡæstɪd", "uk-phonetic": "'flæbəga:stid", "explains": ["v. some words", "adj. some words" ] } } But Java can not have a value with a "-" in it. So how to get "us-phonetic" ? 回答1: Create a POJO class to represent your JSON and decorate your fields with the SerializedName annotation. gson uses @SerializedName("json_name") when the name of the JSON field and the name of the java field