2014-09-16 1 views
1

새 Codenameone 프로젝트를 만들었습니다. 내가 샘플 프로젝트 "MapsDemo"를 타고 분할을 사용하는 경우, 그러나Codenameone에서 split 메서드를 사용하는 중 오류가 발생했습니다.

location: variable definition of type String 
error: cannot find symbol 
String[] v = values.split(","); 
symbol: method split(String) 

: 나는이 프로젝트를 빌드 할 때 나는이 오류가 발생했습니다

String values = "one, two, tree"; 
String[] v = values.split(","); 

에는 다음과 같은 코드를 포함 방법, 다 괜찮아.

무엇이 문제 일 수 있습니까?

감사합니다.

답변

1

코드 명 One은 Java 5의 하위 집합을 지원하며 String.split()은 없습니다. 코드 명 하나의 패키지 공간에 이식 가능한 라이브러리를 추가하는 것보다 모든 플랫폼에서 VM 구현 코드를 변경하는 것이 훨씬 더 어렵습니다. 또한 모든 엣지 경우를 100 % 호환 가능하게 만들기가 어렵고 실행 파일이 커집니다 (사용하지 않아도 String.split 비용을 지불합니다).

우리는 StringUtilsStringTokenizer을 가지고 있으며, cn1lib 섹션에는 정규식 패키지가 있습니다.

+0

확인. 이해 했어. 대신 'StringUtils'를 사용합니다. 그러나, 왜 'String.split()'이 MapsDemo 예제에서 작동하는지 알고 싶습니다. 왜 제발 말해 줄래? – Goose

+0

지도에서 데모에서 문자열 분할을 볼 수 있습니까? –

+0

String.split()을 사용하여 (MapsDemo 앱에서) 한 줄을 코딩 했으므로 작동했습니다. 왜? – Goose

1

왜이 기능을 사용하지 않으시겠습니까?

import java.util.StringTokenizer; 
    ... ... 
    String fruits = "apple:pear:grape"; 
    String delimiter = ":"; 
    StringTokenizer fruitsTokenizer = new StringTokenizer(fruits, delimiter); 
    while (fruitsTokenizer.hasMoreTokens()) { 
      String fruit = fruitsTokenizer.nextToken(); 
      // 
      // Do here something you want... 
      // 
    } 
관련 문제