将string 转int
/**
* @param {string} str
* @return {number}
*/
var myAtoi = function(str) { str = str.replace(/^(\s|\u00A0)+/,'').replace(/(\s|\u00A0)+$/,''); if( (str[0] !== '-' && str[0] !== '+') && isNaN(str[0])){
return 0;
}
var num = [];
var i =0;
if(str[0] === '-' || str[0] === '+'){
i =1;
}
for(; i < str.length ; i++){
if(isNaN(str[i]) || str[i] === ' '){
break;
}
num.push(str[i]);
}
var int_num = 0;
var ten = 1;
while(num.length > 0){
var tmp = num.pop() * ten;
int_num += tmp;
ten *= 10;
}
if(str[0] === '-'){
int_num = 0 - int_num;
}
if(int_num > 2147483647){
return 2147483647;
}
if(int_num < -2147483648){
return -2147483648;
} return int_num;
};
主要看异常处理情况:
1.前后空格的处理
2.+,- 符号的处理
3.要求字符串后有数字以外的字符仍然能够正常工作,例如‘452fjse' 输出 452
4.超过int 型数值范围处理 最大值2147483647 和最小值 -2147483648 。
将string 转int的更多相关文章
- C#中String转int问题
String转int主要有四种方法 1. int.Parse()是一种类容转换:表示将数字内容的字符串转为int类型. 如果字符串为空,则抛出ArgumentNullException异常: 如果字符 ...
- 编写Java应用程序。首先,定义描述学生的类——Student,包括学号(int)、 姓名(String)、年龄(int)等属性;二个方法:Student(int stuNo,String name,int age) 用于对对象的初始化,outPut()用于输出学生信息。其次,再定义一个主类—— TestClass,在主类的main方法中创建多个Student类的对象,使用这些对象来测 试Stud
package zuoye; public class student { int age; String name; int stuNO; void outPut() { System.out.pr ...
- js string to int
一.js中string转int有两种方式 Number() 和 parseInt() <script> var str='1250' ; alert( Number(str) ...
- LeetCode 8 String to Integer (string转int)
题目来源:https://leetcode.com/problems/string-to-integer-atoi/ Implement atoi to convert a string to an ...
- java 13-4 Integer和String、int之间的转换,进制转换
1.int类型和String类型的相互转换 A.int -- String 推荐用: public static String valueOf(int i) 返回 int 参数的字符串表示形式. B. ...
- swift 中String,Int 等类型使用注意,整理中
swfit中的String和Int是 struct定义的,不同于NSString和NSNumber, 如果想在一个数组中同时包含String和Int,那么这个数组要声明为[Any] 而不是 [AnyO ...
- 首先,定义描述学生的类——Student,包括学号(int)、 姓名(String)、年龄(int)等属性;二个方法:Student(int stuNo,String name,int age) 用于对对象的初始化,outPut()用于输出学生信息。其次,再定义一个主类—— TestClass,在主类的main方法中创建多个Student类的对象,使用这些对象来测 试Student类的功能。
package lianxi; public class Student { String Name; int XveHao,Age; Student(String Name,int XveHao,i ...
- caffe: compile error : undefined reference to `cv::imread(cv::String const&, int)' et al.
when I compile caffe file : .build_debug/lib/libcaffe.so: undefined reference to `cv::imread(cv::Str ...
- java中字符串String 转 int(转)
java中字符串String 转 int String -> int s="12345"; int i; 第一种方法:i=Integer.parseInt(s); 第二种方法 ...
- std::string和int类型的相互转换(C/C++)
字符串和数值之前转换,是一个经常碰到的类型转换. 之前字符数组用的多,std::string的这次用到了,还是有点区别,这里提供C++和C的两种方式供参考: 优缺点:C++的stringstream智 ...
随机推荐
- tomcat动态映射路径
写了一个工具类,将上传文件功能保存文件的目录移到webapps目录外面,通过动态生成xml映射文件到tomcat\conf\Catalina\localhost目录下从而实现目录映射.可以被http直 ...
- java开发之基础篇2
一.java开发环境的搭建 下载和安装jdk.版本自己看着办! 1 JAVA_HOME C:\Program Files\Java\jdk1.7.0_25 2 path C:\Program File ...
- 《第一行代码》学习笔记28-内容提供器Content Provider(1)
1.内容提供器:用于在不同的应用程序之间实现数据共享的功能,提供了一套完整的机制,允许一个程序访问另一个程序中的数据,同时还能保证被访问 数据的安全性.使用内容提供器是Android实现跨程序共享数据 ...
- java NumberForMate的使用
有时候我们需要将数字转化为字符串,并且转化后的长度要一定.比如00012这种类型.这时候我们就可以使用NumberForMate这个方法: NumberFormat numberFormat = Nu ...
- 最短路径floy算法———模板
#include<cstdio>int n,i[1000][1000];int main(){ scanf("%d",&n); for (int a=1;a&l ...
- 自定义View—颜色
一.颜色通道的意思 ARGB888.ARGB444.RGB565.Alpha8的区别 二.如何自定义颜色 ①.首先ARGB分别表示
- nignx开启expires后相关资源不显示的问题
expires可以指定浏览器缓存,加快浏览速度 但是开启expires必须先指定root server中原来指定 location / { root D:/WWW; index index.html ...
- MySQL 设置远程访问
MySQL远程访问,也就是通过ip访问MySQL服务,MySQL对于安全的要求是非常严格的,需要授权. 1.本地访问 GRANT ALL PRIVILEGES ON *.* TO admin@loca ...
- 距离顶部估计像素,显示div!
<html> <head> <title>slide</title> <style type="text/css"> # ...
- C语言递归分析
思路 下图描述的是从问题引出到问题变异的思维过程: 概述 本文以数制转换为引,对递归进行分析.主要是从多角度分析递归过程及讨论递归特点和用法. 引子 一次在完成某个程序时,突然想要实现任意进制数相互转 ...