拡張 switch ステートメントまたは式に自動的に置換できる switch ステートメントを報告します。

例:


  double getPrice(String fruit) {
    // switch ステートメントは拡張 'switch' に置換できます
    switch (fruit) {
      case "Apple":
        return 1.0;
      case "Orange":
        return 1.5;
      case "Mango":
        return 2.0;
      default:
        throw new IllegalArgumentException();
    }
  }

クイックフィックス適用後:


  double getPrice(String fruit) {
    return switch (fruit) {
      case "Apple" -> 1.0;
      case "Orange" -> 1.5;
      case "Mango" -> 2.0;
      default -> throw new IllegalArgumentException();
    };
  }
  

2019.1 の新機能です