2015-02-17 23 views
-3

我有这个输入像如何将字符串值转换为整数而不使用Integer.parseInt()?

String s = "6" , ss="99 , sss = "99999"; 

我需要这些值存储在一个int引用变量, 不使用的Integer.parseInt

任何建议? ,没有完整的代码,只是提示?

+2

提示:''6' - '0'= 6' – clcto 2015-02-17 22:54:46

+5

将'Integer.parseInt'中的代码复制到一个新的方法中。 “ – 2015-02-17 22:55:21

+2

”*不使用'Integer.parseInt' *“为什么?这看起来像[XY问题](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)。你想达到什么目的? – Pshemo 2015-02-17 22:56:06

回答

1

扫描仪怎么样?

int a=new Scanner(s).nextInt(); 

没有util。

public static int parseInt(String s) 
    { 

    int ans=0; 
     for(int i=s.length()-1;i>=0;i--) 
     { 
      ans+=(s.charAt(i)-'0'); 
      ans*=10; 
     } 
     return ans/10; 
    } 
+0

其他选项'int i = new BigInteger(“123”)。intValue();' – Pshemo 2015-02-17 22:58:01

0

尝试从字符串中获取每个字符,然后获取每个字符的值。 0的值为48所以

char c = '9'; 
int i = c - 48; 

现在i = 9。之后,你只需要为10,适当的功率乘以此值,并把它添加到总

0
public class MyStringToNumber { 

    public static int convert_String_To_Number(String numStr){ 

     char ch[] = numStr.toCharArray(); 
     int sum = 0; 
     //get ascii value for zero 
     int zeroAscii = (int)'0'; 
     for(char c:ch){ 
      int tmpAscii = (int)c; 
      sum = (sum*10)+(tmpAscii-zeroAscii); 
     } 
     return sum; 
    } 

    public static void main(String a[]){ 

     System.out.println("\"3256\" == "+convert_String_To_Number("3256")); 
     System.out.println("\"76289\" == "+convert_String_To_Number("76289")); 
     System.out.println("\"90087\" == "+convert_String_To_Number("90087")); 
    } 
} 

多见于this URL

+0

或者您也可以使用此代码 – 2016-05-16 06:24:42

+0

将第二种解决方案添加到答案中,很难将其视为未格式化的评论 - 您可以[编辑] 答案。 – 2016-05-16 06:38:33

0
public class ConvertIntoInt { 
    public static void main(String []args) { 
     String numStr = "3256"; 
     char ch[] = numStr.toCharArray(); 
     int sum = 0; 
     // Get ASCII value for zero 
     int zeroAscii = (int)'0'; 
     for (char c:ch) { 
      int tmpAscii = (int)c; 
      System.out.println("Temp Ascii:" + tmpAscii); 
      sum = (sum * 10) + (tmpAscii - zeroAscii); 
      System.out.println(sum); 
     } 
     System.out.println(sum); 
    } 
} 
相关问题