我需要将字符串转换为整数数组。每个数组槽将包含一个整数值的字母。例如,字符串omg
将以类似
array[0] = 13; array[1] = 44; array[3] = 26;
EDIT这些字母的值是经过思考的。我只是想知道是否有一种方法可以把字母变成整数。
有任何内置的方法吗?
有多种方法可以做到这一点,具体取决于您所说的"将字母变为整数"的含义。
-
您可以使用
String.getBytes()
将字符串编码为系统的默认编码,并将其作为byte[]
给您。byte
类型为整型 -
您可以使用
String.toCharArray()
给您字符串的字符。char
类型为整型 -
你可以在字符串上做各种其他的"神秘"变换;例如,对每个字符串字符应用凯撒密码,得到一个字母,然后将其转换为一个数字。
然后你可以写一个循环把char[]
或byte[]
变成int[]
,但是没有内置的方法来完成这一步的转换…如果你需要的话。
注意,前两种方法可能会给出不同的整数,这取决于字符串值和系统的默认字符编码。重要的是,您要了解您正在尝试使用此转换做什么…
(我假设问题中的示例转换不应该从字面上理解…)
要将其转换为数组,请尝试char[] chars = str.toCharArray();
,并将其转换为整数,请使用for循环并调用variable . 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。
编辑2:实际上,这是完全错误的。