2014-01-28 8 views
0

내 Array 목록의 번호를 포인트 i의 문자열로 변환하려고합니다. 내 번호의 부분 문자열을 만들 수 있도록하려면 어떻게해야합니까?Integer Arraylist를 문자열로 변환

ArrayList<Integer> numbers= new ArrayList<Integer>(); 
for(int i=0; i<=10; i++){ 
    String numbersString[i] = String.valueOf(numbers[i]); 
} 

답변

3

numbers[i] 만약 당신이 단지 그것의 toString() 방법 내장 사용할 수 있습니다 Integer 타입이다. 그러나 numbersArrayList이므로 numbers.get(i)을 사용해야합니다.

String numbersString[i] = ... 구문이 잘못되었습니다. 루프 외부에서 배열을 선언 한 다음 루프 내에 numbersString[i] = ...으로 간단히 액세스해야합니다.

+0

> 달성하려는 목표는 무엇입니까? 대답이 아니라 의견의 일부가되어야합니다. –

0

이렇게 제안 할 것입니다.

StringBuilder sb = new StringBuilder(); 
for (Integer number : numbers) { 
    sb.append(number != null ? number.toString() : ""); 
} 
System.out.println("The number string = " + sb.toString()); 
0

코드를 보면 ArrayList 입력과 String [] 출력이 필요합니다.

Guava lib의 Collections2를 사용하여 string으로 변환 한 후 array로 구문 분석 할 수 있습니다.

 ArrayList<Integer> numbers = new ArrayList<Integer>(); 

     Collection<String> transform = Collections2.transform(numbers, new Function<Integer, String>() { 

      @Override 
      @Nullable 
      public String apply(@Nullable Integer input) { 
       return input.toString(); 
      } 
     }); 

     final String[] array = transform.toArray(new String[transform.size()]); 
관련 문제