Java中是否有内置方法将字符串转换为整数数组?

时间:2013-01-16 06:07:01

标签: java arrays integer transform

我需要将字符串转换为整数数组。每个数组槽都包含一个整数值的字母。例如,字符串omg将返回类似

的内容
array[0] = 13; array[1] = 44; array[3] = 26; 

编辑这些字母值被认为是。我只是想知道是否有一种方法可以将字母转换成整数。

这有什么内置方法吗?

2 个答案:

答案 0 :(得分:2)

将其转换为数组,尝试char[] chars = str.toCharArray();,并将其转换为整数,使用for循环,并调用varible.getNumericValue();.所以一个例子是:

String omg = "OMG";
char[] chars = omg.toCharArray();
int[] result;
for(char currentChar : chars){
    result[result.length] = currentChar.getNumericValue();//result.length starts at 1 more than the final index
}

编辑:或者只使用上面提到的String.getBytes。

编辑2:实际上,这是完全错误的。

答案 1 :(得分:2)

有多种方法可以做到这一点,具体取决于“将字母转换成整数”的具体含义。

  • 您可以使用String.getBytes()将字符串编码为系统的默认编码,并将其作为byte[]提供。 byte类型是整数类型。

  • 您可以使用String.toCharArray()为您提供字符串的字符。 char类型是整数类型。

  • 你可以对字符串进行各种其他“神秘”转换;例如将Caeser的密码应用于每个字符串字符,以便为您提供一个字母,然后将其转换为数字。

然后您可以编写一个循环来将char[]byte[]转换为int[],但没有内置方法来执行此转换步骤...如果这就是你所需要的。

请注意,前两种方法可能会给出不同的整数,具体取决于字符串值和系统的默认字符编码。重要的是要了解您要对此转换做些什么......


(我假设问题中的示例转换不应按字面意思理解......)