簡體   English   中英

將整數轉換為字符數組:java

[英]Convert an integer to an array of characters : java

將整數轉換為字符數組的最佳方法是什么?

輸入:1234

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

牢記Java語言的廣泛性將是最好和最有效的方法嗎?

int i = 1234;
char[] chars = ("" + i).toCharArray();

你可以嘗試類似的東西:

String.valueOf(1234).toCharArray();

試試這個...

int value = 1234;
char [] chars = String.valueOf(value).toCharArray();

您可以將該整數轉換為字符串,然后將該字符串轉換為char arary: -

int i = 1234;
String s = Integer.toString(i);
Char ch[] = s.toCharArray();

/*ch[0]=1,ch[1]=2,ch[2]=3,ch[3]=4*/

這會將int轉換為2 char數組。 如果你想獲得最少量的字符,試試這個。

//convert int to char array

int valIn = 111112222;

ByteBuffer bb1 = ByteBuffer.allocate(4);
bb1.putInt(valIn); 

char [] charArr = new char[4];
charArr[0] = bb1.getChar(0);
charArr[1] = bb1.getChar(2);

//convert char array to int

ByteBuffer bb2 = ByteBuffer.allocate(8);
bb2.putChar(0,charArr[0]);
bb2.putChar(2,charArr[1]);

long valOut = bb2.getInt(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);

假設您有一組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;
   }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM