java 문자열 분할의 세 가지 방법 (총결)

최근 프로젝트에서 작은 문제가 발생했습니다. 하나의 문자열을 하나의 수조로 나누는데 Stringstr='aa,bbb,cc'와 유사합니다.그리고','를 분할부로 하여 하나의 수조로 분할하면 어떤 방법으로 실현할 수 있습니까?
첫 번째 방법:
split () 방법을 사용하면 split () 방법으로 실현하는 것이 가장 편리하지만 효율이 비교적 낮다는 것을 단번에 생각할 수 있다
두 번째 방법:
효율이 높은 StringTokenizer 클래스를 사용하여 문자열을 분할합니다. StringTokenizer 클래스는 JDK에서 제공하는 문자열 분할 서브열을 처리하는 도구 클래스입니다.구조 함수는 다음과 같습니다.

public StringTokenizer(String str,String delim)
str는 분할 처리할 문자열입니다.delim은 분할 기호입니다.StringTokenizer 대상이 생성된 후,nextToken () 방법을 통해 다음 분할 문자열을 얻을 수 있으며,hasMoreTokens () 방법을 통해 더 많은 하위 문자열이 처리되어야 하는지 알 수 있습니다.이런 방법의 효율은 첫 번째 방법보다 높다.
세 번째 방법:
String의 두 가지 방법인 indexOf()와subString()을 사용하면subString()은 시간 교환 공간 기술을 사용하기 때문에 메모리 넘침 문제를 처리하기만 하면 실행 효율이 상대적으로 빠르지만 대담하게 사용할 수 있다.indexOf () 함수는 실행 속도가 매우 빠른 방법입니다.
원형은 다음과 같습니다.
public int indexOf(int ch)는 지정된 문자가 String 객체에 있는 위치를 반환합니다.다음과 같습니다.
예:

"ab&&2" & "ab" "2"


String tmp = "ab&&2";
String splitStr = null;
int j = tmp.indexOf("&");       //  
splitStr = tmp.substring(0, j);    //  , 
tmp = tmp.substring(j + 2);     //  
System.out.println(splitStr);
System.out.println(tmp);

ab
2
이상의 이 자바 문자열을 분할하는 세 가지 방법(총결)은 바로 편집자가 여러분에게 공유한 모든 내용입니다. 여러분께 참고가 되고 저희를 많이 사랑해 주시기 바랍니다.

좋은 웹페이지 즐겨찾기