码迷,mamicode.com
首页 > 其他好文 > 详细

字符串转成整数

时间:2015-10-23 18:35:34      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:

题目:把一个字符串转换成整数。

考虑的问题:

1、空指针;
2、包含非数字字符;
3、包含正负号;
4、最大正整数;
5、最小负整数;
6、溢出(还没考虑)
 
代码:
 1 package com.yyq;
 2 import java.util.regex.Matcher;
 3 import java.util.regex.Pattern;
 4 
 5 /**
 6  * Created by Administrator on 2015/9/4.
 7  */
 8 public class StringToInt {
 9     public static void main(String args[]) {
10         String str = "-123";
11         int integer = strToInt(str);
12         System.out.println("number: "+integer);
13     }
14 
15     public static int strToInt(String str) {
16         int number = 0;
17         int flag = 0;
18         int subflg = 0;
19         str.trim();
20         try {
21             if (str == null || str == "") {
22                 System.out.println("String is null.");
23                 return 0;
24             }
25             char c[] = str.toCharArray();
26             String newStr = null;
27             if(c[0] == ‘-‘ || c[0] == ‘+‘){
28                 flag = 1;
29                 if(c[0] == ‘-‘) subflg = 1;
30                 newStr = new String(c,1,c.length-1);
31                 System.out.println(newStr);
32             }
33 
34             Pattern pattern = Pattern.compile("[a-zA-Z]+");
35             Matcher mat = pattern.matcher(newStr);
36             if (mat.matches()) {
37                 System.out.println("String contains character.");
38                 number = 0;
39             } else {
40                 if(flag == 1) {
41                     for (int i = 1; i < c.length; i++)
42                         number = number * 10 + c[i] - ‘0‘;
43                     if (subflg == 1)
44                         number = number * -1;
45                 }
46                 System.out.println("Integer: "+Integer.parseInt(str));
47             }
48         }catch (Exception e){
49            e.printStackTrace();
50         }
51         return number;
52     }
53 }

 

字符串转成整数

标签:

原文地址:http://www.cnblogs.com/yangyquin/p/4905049.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!