27

整数を文字配列に変換する最良の方法は何ですか?

入力:1234

出力:{1,2,3,4}

Java言語の広大さを念頭に置いて、それを行うための最良かつ最も効率的な方法は何でしょうか?

4

7 に答える 7

54
int i = 1234;
char[] chars = ("" + i).toCharArray();
于 2012-08-30T08:28:38.773 に答える
47

次のようなことを試すことができます:

String.valueOf(1234).toCharArray();
于 2012-08-30T08:29:13.953 に答える
15

これを試して...

int value = 1234;
char [] chars = String.valueOf(value).toCharArray();
于 2012-08-30T08:30:46.470 に答える
0

グーグルのインタビューでこんな質問をされました。インタビューで尋ねられた場合は、モジュールと部門を使用してください。これが答えです

List<Integer> digits = new ArrayList<>();
//main logic using devide and module
for (; num != 0; num /= 10)
    digits.add(num % 10);

//declare an array
int[] arr = new int[digits.size()];
//fill in the array
for(int i = 0; i < digits.size(); i++) {
    arr[i] = digits.get(i);
}
//reverse it.
ArrayUtils.reverse(arr);
于 2016-11-18T15:57:12.337 に答える
-2

int の配列と、これらの int を文字に変換する別のメソッドがあるとします。たとえば、数値の等級を文字の等級に変更するプログラムのように、次のようにします...

public char[] allGradesToLetters()
   {
      char[] array = new char[grades.length];

      for(int i = 0; i < grades.length; i++)
      {
         array[i] = getLetter(grades[i]);
      }

      return array;
   }
于 2016-12-07T18:40:46.350 に答える