최근에 프로젝트에서 작은 문제가 발생했습니다. 문자열은 String str = "AAA, BBB, CCC와 유사한 배열로 나뉩니다. 그런 다음 스플리터로서 ",", "배열로 나누어"사용하십시오. 그것을 구현하기 위해 어떤 방법을 사용할 수 있습니까?
첫 번째 방법 :
아마도 Split () 메소드를 사용하는 것을 갑자기 생각할 것입니다. Split () 메소드로 구현하는 것이 가장 편리하지만 효율성은 상대적으로 낮습니다.
두 번째 방법 :
보다 효율적인 StringTokenizer 클래스를 사용하여 문자열을 분할하십시오. StringTokenizer 클래스는 String Segmentation 하위 문자열을 처리하기 위해 JDK에서 특별히 제공되는 도구 클래스입니다. 생성자는 다음과 같습니다.
public stringtokenizer (String Str, String Delim)
STR은 분할 및 처리 될 문자열이며, Delim은 분할 기호입니다. StringTokenizer 객체가 생성되면 다음 분할 된 문자열은 다음 분할 () 메소드를 통해 얻을 수 있습니다. 그런 다음 hasmoretokens () 메소드를 통해 처리 할 더 많은 하위 문자가 있는지 알 수 있습니다. 이 방법은 첫 번째 방법보다 효율적입니다.
세 번째 방법 :
문자열의 두 가지 메소드를 사용하여 indexof () 및 substring (). Substring ()은 공간 시간을 사용하여 기술을 사용하므로 실행 효율성이 비교적 빠릅니다. 메모리 오버플로 문제가 잘 처리되는 한, 대담하게 사용할 수 있습니다. indexof () 함수는 매우 빠른 실행 방법입니다.
프로토 타입은 다음과 같습니다.
public int indexof (int ch) 문자열 객체에서 지정된 문자의 위치를 반환합니다. 다음과 같이 :
예를 들어:
"ab && 2"는 "ab" "2"문자열 tmp = "ab && 2"로 나뉘어진다; String splitst = null; int j = tmp.indexof ( "&"); // delimiter splitstr = tmp.substring (0, j)의 위치를 찾습니다. // 구분 기호를 찾아 서브 스트링 tmp = tmp.substring (j + 2)을 가로 채립니다. // 처리 해야하는 나머지 문자열 System.out.println (splitst); System.out.println (TMP); AB2
Java 문자열 세분화의 위의 세 가지 방법 (요약)은 내가 공유하는 모든 내용입니다. 나는 당신이 당신에게 참조를 줄 수 있기를 바랍니다. 그리고 당신이 wulin.com을 더 지원할 수 있기를 바랍니다.