メソッドやコンストラクターで、定数の文字セットである String リテラル ("UTF-8" など) を定義済みの StandardCharsets.UTF_8コードに置換できるものを報告します。

修正後は文字セットの検出が不要になるため、コードの処理速度がアップする可能性があります。 また、UnsupportedEncodingException をキャッチする必要もなくなる場合があります。 この場合、 catch ブロックは自動的に除去されます。

例:


  try {
    byte[] bytes = "str".getBytes("UTF-8");
  } catch (UnsupportedEncodingException e) {
  }

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


  byte[] bytes = "str".getBytes(StandardCharsets.UTF_8);

このインスペクションは Java 7 以降のバージョンで使用できます。

2018.2 の新機能です