아래의 String :: substring 서명을 사용하는 매우 오래된 코드 (2005 년 이전)에서 버그 수정을해야합니다.Java 문자열 :: 과거의 부분 문자열 변경
public String substring(int beginIndex, int endIndex)
이제 beginIndex부터 endIndex-1까지의 모든 문자가 포함됩니다. 과거에는 endIndex에도 문자가 포함되었을 가능성이 있습니까?
는 다음과 같은 코드에서:
String str = line.substring(119, 120);
과는 2 문자로 구성된 문자열과 비교됩니다. 누구든지 이에 관한 정보가 있습니까?
Java2에서는 여전히 endIndex가 제외됩니다. https://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html#substring(int,%20int) –
아니요 가능하다면 (자바 코드의 javadoc은 아직 공개되어있다.) –
나는 이것이 코드를 작성한 개발자의 잘못이라고 가정해야 할 것이다. Java로 작업하는 사람들은 하위 호환성을 강력히지지하고 있으며, 이러한 변화를 보지 못합니다. 나는 끝 인덱스가 항상 독점적 인 것으로 알고있다. – Logan