Java 无法在此程序中将字符串转换为int

Java 无法在此程序中将字符串转换为int,java,string,type-conversion,Java,String,Type Conversion,我在第8行将字符串转换为int时出错 整数parseInt方法似乎没有完成它的工作 我曾尝试使用其他方法来转换字符串,但没有任何效果,这导致我无法完成正在进行的编码挑战。我已经删除了代码的其余部分,因为逻辑中的错误在这些行中 错误消息如下: java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer

我在第8行将字符串转换为int时出错

整数parseInt方法似乎没有完成它的工作

我曾尝试使用其他方法来转换字符串,但没有任何效果,这导致我无法完成正在进行的编码挑战。我已经删除了代码的其余部分,因为逻辑中的错误在这些行中

错误消息如下:



     java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
       at java.lang.Integer.parseInt(Integer.java:583)
       at java.lang.Integer.parseInt(Integer.java:615)
    at Solution.reverseNum(Solution.java:35)
        at Solution.main(Solution.java:8)


公共类解决方案{
公共静态void main(字符串args[])引发异常{
字符串sc=“1234567890123456”;
int-noCases=1;

for(int i=0;i
1234567890123456
太大,不能成为int。在这里,用逗号查看它:
1234567890123456
。这是一个万亿


最大可能的整数是2147483647。请尝试一个较小的数字或
Long.parseLong()

为什么要将
字符串转换成一个数字来反转它呢?为什么不直接使用呢?哇,谢谢azurefrog,直到现在才知道这个方法!谢谢,这解决了我的问题

    public class Solution {
        public static void main(String args[] ) throws Exception {
            String sc = "1234567890123456";
            int noCases = 1;
            for(int i=0; i<noCases; i++){
                int rev = reverseNum(sc); 
            } // for each credit card number
        }

        public static int reverseNum(String inp){ // helper function
            int in =Integer.parseInt(inp); 
            int res  = 0;
            for(int i = in; i !=0; i/=10){
                res = res *10 + i%10;
            }
            return res;
        }
    }