2014-02-28 4 views
0

String을 많은 개별 변수 int로 나눌 수 있습니까? 그래서문자열을 여러 변수로 나누는 방법

int var1 = 1; 

int var2 = 2; 

int var3 = 3; 

과 같이

String s = "1,2,3,4,5,6"; 

.

Thanks 
+5

's.split (","); – donfuxx

+0

아니요. 그러나 ","를 구분자로 사용하여 문자열 배열로 ** 분할 한 다음 int 배열로 변환 (구문 분석) 할 수 있습니다. – Selvin

답변

0

분할() 나는이 코드는 단지에 당신의 문제는 이미 solved.But 알고

String abc = "1,2,3,4"; 

    int i = 0; 
    StringTokenizer st = new StringTokenizer(abc,","); 
    int array[] = new int[st.countTokens()]; 
    while (st.hasMoreTokens()) { 
     array[i] = Integer.parseInt(st.nextToken().toString()); 
     i++; 
    } 

을 메서드는 다음과 같이 있고 StringTokenizer 클래스를 사용하는 다른 방법이 더 쉽다 one.One입니다 StringTokenizer의 사용을 소개합니다

0

리플렉션을 사용하지 않는 한 각 변수에 값을 동적으로 할당 할 수 없습니다.

할 수있는 일은 split the string on the commas, convert each token into an integer이며이 값을 컬렉션에 넣습니다. 예를 들어

:

int[] result; 
String s = "1,2,3,4,5,6"; 
String[] tokens = s.split(","); 
result = new int[tokens.length]; 

for(int i = 0; i < tokens.length; i++){ 
    result[i] = Integer.parseInt(tokens[i]); 
} 

은 이제 (아마도 result[1]-var1을 할당함으로써)를 result 어레이의 각 값에 액세스 할 수있다.

마찬가지로 : 리플렉션을 사용하여 직접 변수에 추가 할 수도 있지만 일반적으로 디자인이 어딘가 잘못되었다는 표시입니다.

4
String s = "1,2,3,4,5,6"; 
String[] vars = s.split(","); 
int [] varIn= new int[vars.lenght] 

for (int i=0;i<vars.lenght;i++) 
{ 
    varIn[i]= Integer.parseInt(vars[i]); 
} 

.

==> varIn[0]=1; 
    varIn[1]=2; 
    etc.. 
관련 문제