美文网首页
把一个字符串转换成整数

把一个字符串转换成整数

作者: 柳仁儿 | 来源:发表于2017-09-13 17:26 被阅读0次

public class StrToInt {
public static final String Min_number = "-9223372036854775808";
public static final String Max_number = "9223372036854775807";

public static Long strToNumber(String s) {
    long number = 0;
    // 需要先判断是否为空,再判断是否为空串 否则会报空指针异常
    if (s == null || s.equals("")) {
        System.out.println("传入的字符串为空或空指针!");
        return (long) 0;
    }
    boolean isNum = s.matches("-{0,1}[0-9]+");
    if (!isNum) {
        System.out.println("输入的数字不合法!");
        return (long) 0;
    }
    if (s.startsWith("-")) {
        if (s.length() > Min_number.length()) {
            System.out.println("该字符串超过数字的下届");
            return (long) 0;
        }
        if (s.length() == Min_number.length() && s.compareTo(Min_number) > 0) {
            System.out.println("该字符串超过数字的下届");
            return (long) 0;
        }
    } else {
        if (s.length() > Max_number.length()) {
            System.out.println("该字符串超过数字的上届");
            return (long) 0;
        }
        if (s.length() == Max_number.length() && s.compareTo(Max_number) > 0) {
            System.out.println("该字符串超过数字的上届");
            return (long) 0;
        }
    }

    number = Long.parseLong(s);
    return number;
}

public static void main(String[] args) {
    System.out.println(strToNumber("-666"));
    System.out.println(strToNumber("666"));
    System.out.println(strToNumber(""));
    System.out.println(strToNumber(null));
    System.out.println(strToNumber("1a9"));
    System.out.println(strToNumber("-9223372036854775809"));
    System.out.println(strToNumber("9223372036854775808"));
}

}

相关文章

  • 67:把字符串转换成整数

    题目67:把字符串转换成整数 实现一个函数stringToInt,实现把字符串转换成整数这个功能,不能使用atoi...

  • 把字符串转换成整数-java

    把字符串转换成整数 题目描述 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串...

  • JZ-049-把字符串转换成整数

    把字符串转换成整数 题目描述 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串...

  • 字符串转换成整数

    字符串转换成整数 题目描述: 输入一个由数字组成的字符串,把它转换成整数并输出。例如:输入字符串"123",输出整...

  • 剑指 offer:49、把字符串转化成整数

    49. 把字符串转换成整数 题目描述 将一个字符串转换成一个整数(实现Integer.valueOf(string...

  • 剑指offer(四十九)把字符串转换成整数

    点击进入 牛客网题库:把字符串转换成整数 题目描述将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。...

  • 数据转换

    1.int(x[,base])(1)把符合数学格式的数字型字符串转换成整数;(2)把浮点数转换成整数,但是只是简单...

  • 字符串系列--字符转整型数

    1. 字符转整型数 输入一个由数字组成的字符串,把它转换成整数并输出。例如:输入字符串"123",输出整数123。...

  • 字符串转换整数

    题目信息 将字符串转换成一个 32 位有符号整数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ ...

  • LeetCode 每日一题 [17] 字符串转换整数 (atoi

    LeetCode 字符串转换整数 (atoi) [中等] 请你来实现一个 atoi 函数,使其能将字符串转换成整数...

网友评论

      本文标题:把一个字符串转换成整数

      本文链接:https://www.haomeiwen.com/subject/knrlsxtx.html