将整数转换为字符数组:java

Posted

技术标签:

【中文标题】将整数转换为字符数组:java【英文标题】:Convert an integer to an array of characters : java 【发布时间】:2012-08-24 22:35:13 【问题描述】:

将整数转换为字符数组的最佳方法是什么?

输入:1234

输出:1,2,3,4

牢记 Java 语言的广泛性,最好和最有效的方法是什么?

【问题讨论】:

我正在寻找一种有效的方法。我可以考虑将每个数字取出 %10,将其转换为 char 并添加到数组中。最后反转数组。有更好的方法吗?? ***.com/a/19237615/912319 【参考方案1】:

这会将 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);

【讨论】:

【参考方案2】:

您可以将该整数转换为字符串,然后将该字符串转换为 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*/

【讨论】:

【参考方案3】:

假设您有一个整数数组和另一种将这些整数转换为字母的方法,例如将数字等级更改为字母等级的程序,您会这样做...

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

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

      return array;
   

【讨论】:

【参考方案4】:

我在谷歌面试中被问到这个问题。如果在面试中被问到使用模块和部门。这是答案

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);

【讨论】:

【参考方案5】:

试试这个...

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

【讨论】:

【参考方案6】:

你可以试试这样的:

String.valueOf(1234).toCharArray();

【讨论】:

酷.. 仍然不知道 Java 中的一半功能。感谢您的回答。【参考方案7】:
int i = 1234;
char[] chars = ("" + i).toCharArray();

【讨论】:

啊哈...我一直在寻找这样的东西。 :) 嘿,您能否解释一下该解决方案的 (""+i) 部分是如何工作的,您只是说空字符串 + int = 该 int 的字符串。

以上是关于将整数转换为字符数组:java的主要内容,如果未能解决你的问题,请参考以下文章

将数组/字符串列表转换为数组/整数列表的 Lambda 表达式

TS:整数、字符串、数组之间的转换

在Java 8中将整数数组转换为字符串数组的最简单方法[重复]

错误的输出 - 将 Java 字符串转换为数组。插入数组之前数字是不是正确? [复制]

将字符串数组转换为整数数组

将字符数组转换为整数数组