단일 문자열 리터럴이 인수로 전달되는 String.startsWith()String.endsWith() 호출을 보고합니다.

빠른 수정은 호출을 더 효율적으로 구현한 String.charAt()으로 바꾸는 것이 좋습니다.

하지만 변경에 따른 성능 향상은 미미하며, 비 제로 길이 검사가 추가되어 코드 가독성이 낮아집니다. 따라서 엄격한 루프 내에서만 빠른 수정을 적용하는 것이 좋습니다.

이 검사는 Java ME 및 리소스가 많이 제한된 기타 환경을 위한 것입니다. 이 검사 결과를 검토 없이 적용하면 코드 명확성과 설계에 부정적인 영향을 미칠 수 있습니다.

예:


  boolean startsWithX(String s) {
    return s.startsWith("x");
  }

빠른 수정을 적용한 후:


  boolean startsWithX(String s) {
    return !s.isEmpty() && s.charAt(0) == 'x';
  }