我想知道是否可以将以下内容转换为if语句,而不是将其转换为switch语句。

switch (type) {
  case PROJECT:
  case STORY:
  case DEVELOPER:
    createdItem = new AggregateItem(name, desc, value);
    break;
  case STORY_DEVELOPER:
    createdItem = new SingleItem(name, value, child);
    break;
  default:
    createdItem = null;
}

最佳答案

将前三个switch casesor连接起来。
然后它跟随一个else if,最后但并非最不重要的是else

if(PROJECT.equals(type)|| STORY.equals(type) || STORY.equals(DEVELOPER)){
  createdItem = new AggregateItem(name, desc, value);
}else if (STORY_DEVELOPER.equals(type)){
  createdItem = new SingleItem(name, value, child);
}else{
  createdItem = null;
}

09-11 07:14