微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从Java数组中获取具有固定字符串的对象?

如何解决如何从Java数组中获取具有固定字符串的对象?

我有一个对象数组,其长度可以动态更改,但最大值始终为8。每个对象都有一个描述它的固定字符串,例如:

StringBuffer

根据我要从一个api获得多少对象和什么类型的字符串,我想隐藏或显示一个View。我目前正在使用这样的switch语句:

a1

我这样做8次,每次必须添加一个新的switch语句。有没有办法简化这个过程?

解决方法

您可以使用循环,也可以使用Map来避免switch语句。

List<YourCustomObject> arr = getObjectsFromAPI();
Map<String,Boolean> fruitVisibility = new HashMap<>();
fruitVisibility.put("apple",true); // Let' say apple is visible
fruitVisibility.put("orange",false); // Orange is not visible
// ..... and so on

for(YourCustomObject obj : arr){
  if(fruitVisibility.containsKey(obj.getString()))
     view.setVisible(fruitVisibility.get(obj.getString()));
}

或者您可以使用尝试的方式。

for(int i=0; i<array.size(); i++){
  switch(array.get(i).getString()){
    //    case ..
    // ....
  }
}
,

您可以使用迭代器,就像下面这样:

 Iterator iterator = list.iterator();
  while(iterator.hasNext()) {
     System.out.println(iterator.next());
  }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。