StringToInt

public class Stringtoint {
    public static void stringtoint(String s){
        //判断字符串是否为null和是否为空
        if(s == null || s.length() == 0)
            return;
        
        char[] temp = s.toCharArray();//可以不用
        int sum = 0;
        int j = temp.length-1;
        int flag = 0;
        if(temp[0] >= ‘0‘ && temp[0] <= ‘9‘){
            int k = j;
            int l = Integer.parseInt(String.valueOf(temp[0]));
            while(k>0){
                l *= 10;
                k--;
            }
            sum += l;
        }else if(temp[0] == ‘-‘)
            flag = 1;
        j--;

for(int i = 1;i<temp.length;i++){
            if(temp[i] >= ‘0‘ && temp[i] <= ‘9‘){
                int k = j;
                int l = Integer.parseInt(String.valueOf(temp[i]));
                while(k>0){
                    l *= 10;
                    k--;
                }
                sum += l;
                //判断是否超出int的表示范围
                if((flag==0 && sum > 0x7fffffff)||(flag==1 && sum < 0x80000000))
                    return;
            }
            else
                return;
            j--;
        }
        if(flag == 1)
            sum = 0-sum;
        System.out.println(sum);
    }
    public static void main(String args[]){
        String s= "-12.345";
        stringtoint(s);
    }
}
不确定还有没有纰漏。先这样,后面发现了再修正。

时间: 2024-10-11 11:23:24

StringToInt的相关文章

Java Day 16

基本数据类型包装类 Integer.MAX_VALUE  Integer.parseInt(); intValue(); valueOf(); 自动装拆箱 如果是一个字节范围,数据共享 字符串中 数值排序 "20 23 4 5 6 -8 0 88" 1 package com.company; 2 3 import java.util.Arrays; 4 import java.util.Objects; 5 6 /** 7 * Created by junius on 2016/10

函数中的类型是怎么工作的

函数中的类型是怎么工作的 理解类型标记 我们已经理解函数了,看看函数中的类型是怎么工作的,还有域和范围.这只是一个概述,这个"understandingF# types"系列会为你详细介绍. 首先,我们应该多理解类型符号一点.我们之后箭头符号用于域和范围,所以它总是像函数签名: val functionName : domain -> range 看这些示例函数 : let intToString x = sprintf "x is %i" x // form

Apache Commons 工具类介绍及简单使用

Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.下面是我这几年做开发过程中自己用过的工具类做简单介绍.   组件 功能介绍 BeanUtils 提供了对于JavaBean进行各种操作,克隆对象,属性等等. Betwixt XML与Java对象之间相互转换. Codec 处理常用的编码方法的工具类包 例如DES.SHA1.MD5.Base64等. Collections java集合框架操作. Compress java提供文件打包 压缩类库. C

编译原理LL1文法分析表算法实现

import hjzgg.first.First; import hjzgg.follow.Follow; import hjzgg.tablenode.TableNode; import hjzgg.treenode.TreeNode; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.Map; import java.util.Set; import java.util.Stack; im

用quick制作仿PkrCruncher

将自己写的一段代码贴上来,抽取的是业务逻辑层,结构比较完整,我将太具体的东西都删除掉了.里面有tableview,帧动画,替换精灵图片,获取系统时间. local CalWinRateScene = class("CalWinRateScene", function()                             return display.newScene("CalWinRateScene")                         end)

MapReduce:超大机群上的简单数据处理【MapReduce 中文版 中文翻译】

MapReduce是一个编程模型,和处理,产生大数据集的相关实现.用户指定一个map函数处理一个key/value对,从而产生中间的key/value对集.然后再指定一个reduce函数合并所有的具有相同中间key的中间value.下面将列举许多可以用这个模型来表示的现实世界的工作. 以这种方式写的程序能自动的在大规模的普通机器上实现并行化.这个运行时系统关心这些细节:分割输入数据,在机群上的调度,机器的错误处理,管理机器之间必要的通信.这样就可以让那些没有并行分布式处理系统经验的程序员利用大量

JAVA中int、String的类型转换

int -> String int i=12345;String s="";第一种方法:s=i+"";第二种方法:s=String.valueOf(i);这两种方法有什么区别呢?作用是不是一样的呢?是不是在任何下都能互换呢? String -> int s="12345";int i;第一种方法:i=Integer.parseInt(s);第二种方法:i=Integer.valueOf(s).intValue();这两种方法有什么区别

对string的一些扩展函数

对string作了一些扩展,包含string转化为int.string转化为double.string转化为bool.打印系统当前时间.但没有解决数据溢出的问题,请大神帮忙解决! //头文件 /*part of interface about string; *it follow the function simply ,no complex situation exist; *so it should be modify before you use it; *overflow problem

从零开始——电子商务平台02

一.整体示意图 二.分析 1)添加管理员/修改管理员信息 1.addUser.jsp [通过action跳转到adminServlet中.] [当Id值存在时,为修改:当Id值不存在时,为注册] <form role="form" class="form-horizontal" action="${pageContext.request.contextPath}/admin/adminServlet?method=addUser&update