在java中将String转换为int

时间:2013-03-15 12:55:51

标签: java

我需要在java中将字符串转换为相应的int数组。我写了下面的代码,但它没有像我预期的那样工作。

        String temp= "abc1";
        int[] intArray = new int[temp.length()];
        for (int i = 0; i < temp.length(); i++) {
            intArray[i] = Integer.parseInt(temp[i]);
        } 

我编写了一个rc4加密程序,它将密钥和纯文本作为int数组。所以我需要在将用户指定的密钥传递给加密函数之前将其转换为int数组。这是在加密程序中使用密钥的正确方法吗?

4 个答案:

答案 0 :(得分:3)

使用它来获取ASCII码

intArray[i] = (int)temp.charAt(i);

答案 1 :(得分:0)

您可以将字符串转换为charArray。 Traveing charArray你可以转换为:

char[] c = inputString.toCharArray()
for(int i=0;i<c.length;i++)
     int n    = Integer.parseInt(c[i]);

答案 2 :(得分:0)

如果您使用的是Java8或更高版本,则可能对您有所帮助

String temp="abc1";
int[] intArray =temp.chars().map(x->x-'0').toArray();
System.out.println(Arrays.toString(intArray ));

int数组为[49,50,51,1]

答案 3 :(得分:-1)

我通过使用byte而不是int解决了这个问题。修改了rc4取字节数组。 使用

将字符串转换为字节
    String Nkey = jTextField2.getText();
    jTextField3.setText(Nkey);
    int i;
    byte[] key = Nkey.getBytes();