我想检查从 json 对象返回的标签是否具有枚举类中的值之一。
Gson gson = new Gson();
AnalysisResult result = gson.fromJson(data, AnalysisResult.class);
for(Enum p : Enum.values()){
if(p.name().equals(result.tags)){
Intent in1 = new Intent(Analyze.this, Analyze2.class);
startActivity(in1);
}else {
for (final Caption caption : result.description.captions) {
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
speakOut("Result:" + caption.text);
}
}, 100);
}
}
}
这是我的枚举类
public enum Enum {
person,
people,
people_baby,
people_crowd,
people_group,
people_hand,
people_many,
people_portrait,
people_show,
people_tattoo,
people_young
}
这是返回的标签...
“标签”:[“泰迪熊”,“室内”,“衣服”,“领带”,“人”,“熊”,“穿着”,“绿色”,“棕色”,“填充”,“坐着”,男人“,弓”,“脖子”,“脸”,“衬衫”,“蓝色”,“帽子”,“关闭”,“灰色”,“铺设”,“黑色”,“眼镜”,“头” ,"床","白色","抱着","猫","睡觉"]}
我的问题是它总是转到 else 语句。您认为代码有什么问题?