>  기사  >  Java  >  자바에서 문자열을 분할하는 세 가지 방법

자바에서 문자열을 분할하는 세 가지 방법

高洛峰
高洛峰원래의
2017-01-22 11:21:331948검색

최근 프로젝트에서 문자열을 String str="aaa,bbb,ccc"; 와 같이 배열로 나눈 다음 ","를 구분 기호로 사용하여 배열로 나누는 데 작은 문제가 발생했습니다. . 사용 이를 달성하기 위해 어떤 방법이 사용됩니까?

첫 번째 방법:

split() 메서드를 사용하는 것이 가장 편리하지만 효율성이 상대적으로 낮습니다.

두 번째 방법:

더 효율적인 StringTokenizer 클래스를 사용하여 문자열을 분할합니다. StringTokenizer 클래스는 문자열 분할을 하위 문자열로 처리하기 위해 특별히 JDK에서 제공하는 도구 클래스입니다. 생성자는 다음과 같습니다.

public StringTokenizer(String str,String delim)

str은 분할할 문자열이고 delim은 분할 기호입니다. StringTokenizer 개체가 생성되면 nextToken()을 통해 얻을 수 있습니다. 메소드 다음 분할 문자열의 경우 hasMoreTokens() 메소드를 사용하여 처리해야 할 하위 문자열이 더 있는지 확인할 수 있습니다. 이 방법은 첫 번째 방법보다 더 효율적입니다.

세 번째 방법:

String의 두 가지 방법인 indexOf()와 subString()을 사용합니다. subString()은 Time-for-Space 기술을 사용하므로 실행 효율성이 상대적으로 낮습니다. , 메모리 오버플로 문제를 처리하되 과감하게 사용하세요. 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

위의 Java 문자열 분할의 세 가지 방법(요약)은 모두 편집기에서 공유하는 내용입니다. 당신은 참고 자료입니다. 또한 모든 사람들이 PHP 중국어 웹사이트를 지원하기를 바랍니다.

자바 문자열 분할의 세 가지 방법에 관한 더 많은 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.