49.字符串转int


面360的时候这道题目加了一个要求就是要求小数输出整数,故增加一个关于小数点的判断
要注意转义字符:“.”和“|”都是转义字符,必须得加"\\"。同理:*和+也是如此的。
如果用“.”作为分隔的话,必须是如下写法:
String.split("\\."),这样才能正确的分隔开,不能用String.split(".");
如果用“|”作为分隔的话,必须是如下写法:
String.split("\\|"),这样才能正确的分隔开,不能用String.split("|");
public class Solution49 {
public static void main(String[] args) {
String str = "-12345.8";
System.out.println(StrToInt(str));
}
public static int StrToInt(String str) {
//1.字符串为空
if (str.trim().length()==0||str == null) {
return 0;
}
//2.判断是否为负数
int flag = 1;
if (str.charAt(0)=='-') {
flag = -1;
}
//4.如果遇到小数点
if (str.contains(".")) {
if (str.indexOf(".")!=str.lastIndexOf(".")) {
return 0 ;
}
String[] split = str.split("\\.");
str = split[0];
}
//3.开始循环遍历这个字符串
int res = 0;
for (int i = 0; i < str.length(); i++) {
char everyWord = str.charAt(i);
//符号位
if (i==0 && (everyWord=='+'||everyWord=='-')) {
continue;
}
//非法输入
if (everyWord<'0'||everyWord>'9') {
return 0;
}
//合法输入,取出一位,如果后面还有数字就左移(*10)
res = res*10 + everyWord-'0';
}
return (res*flag);
}
}
49.字符串转int的更多相关文章
- 猜随机数(控制台输入,字符串转int)
package com.hanqi.suijishu; import java .util.Random; // main方法类 专门用来运行方法 public class Main { public ...
- python3 isinstance()判断元素是否是字符串、int型、float型
python3 isinstance()判断元素是否是字符串.int型.float型 isinstance是Python中的一个内建函数 语法: isinstance(object, classinf ...
- MFC各个控件之间运用SendMessage()传送CString和char[]字符串,以及int类型数据
LRESULT SendMessage( HWND hWnd, // handle to destination window UINT Msg, // message WPARAM wParam, ...
- 2019-2-28-C#-16-进制字符串转-int-
title author date CreateTime categories C# 16 进制字符串转 int lindexi 2019-02-28 11:51:36 +0800 2018-04-2 ...
- 字符,字符串,int之间互相转换
字符转换成字符串:String str = String.valueOf(ch); 字符转换成int: int a = ch; 字符串转换成字符:char ch = str.charAt(0); 字符 ...
- 字符串,int,十六进制间转换
public class TypeConvert { . /* 字符串转byte[] 03. 这个方法转换后的结果是会多一些 48字符进来的就是代表的是0不知道为什么,但是可以只是取出指定的字符串就行 ...
- MySQL 字符串 转 int/double CAST与CONVERT 函数的用法
http://hongmin118.iteye.com/blog/2029728 转的 MySQL 的CAST()和CONVERT()函数可用来获取一个类型的值,并产生另一个类型的值.两者具体的语 ...
- C#字符串转INT
Convent.ToInt32(string ) 可以转化字符串 其他 * .tostring(); (int ) char //强制类型转换 不能转化字符串
- IP地址字符串与int整数之间的无损转化
今天鹅厂店面,最后问了一个ip地址字符串和整数间无损转化的问题,晚上有时间了手撸了一下代码. public class IPstr { public static void main(String a ...
随机推荐
- Go - WaitGroup
package main import ( "fmt" "sync" ) //WaitGroup用于等待一组线程的结束.父线程调用Add方法来设定应等待的线程的 ...
- [工作积累] Google Play Services
注意添加APP_ID <meta-data android:name="com.google.android.gms.games.APP_ID" android:value= ...
- Linux上使用源代码安装软件
- miniui的联动列表
function OnCellBeginEdit(e) { var grid = e.sender; var column = e.column; if (!column.parentfield) { ...
- 华为4K机顶盒EC6108V9U从原联通更换为电信的IPTV账号成功经验
4K设备直接在淘宝上买30块钱升级4K机顶盒,i视视手机app控制电视和手机投屏 硬件设备:EC6108V9U由X省联通更换为四川电信 采坑经验: 1.要从现有的机顶盒获取mac地址.stbid.ip ...
- IMDG
将内存作为首要存储介质不是什么新鲜事儿,在对主存的使用上,内存数据网格(In Memory Data Grid,IMDG)与IMDB类似,但二者在架构上完全不同.IMDG特性可以总结为以下几点: 数据 ...
- Unity 3D中的阴影设置
在Unity 3D中,经常需要用到光照阴影,即Directional Light的Shadow,Shadow分为Hard Shadow和Soft Shadow.区别是Soft Shadow的阴影边缘比 ...
- DateTime?,也是一种类型,代表DateTime或NULL两种类型,在处理空时间时比较有用
public static DateTime? GetDateTimeFromStr(string date) { if (date.Trim() == string.Empty) return nu ...
- postgresql 游标,函数,存储过程使用例子
CREATE OR REPLACE FUNCTION cursor_demo() RETURNS refcursor AS --返回一个游标 $BODY$ declare --定义变量及游标 unbo ...
- JavaScript 对象属性底层原理
对象属性类型 1. 数据属性 [[Configurable]]:表示能否通过delete删除属性从而重新定义属性,能否修改属性的特性,或者能否把属性修改为访问器属性,特性默认值为true [[Enum ...