Java认证基础知识:java字符串转化整型问题
java 字符串转化整型问题
public class StringParesInteger {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
tln(_VALUE);
tln(_VALUE/10);
tln(pareseInt("="));
}
/**本题考查的主要是边界条件
* 1.穿入的字符串是否为空
* 2.字符串的首位是否为(+、-)
* 3.字符中是否有非法字符
* 4.穿入的字符串是否超过了整数的最大值(_VALUE(2147483647)/_VALUE(-2147483648))
*
* @param data
* @return
*/
public static int pareseInt(String data){
/*
* 判读穿传入的字符串是否为空
*/
if(data==null||th()==0){
throw new NullPointerException("data is null");
}
int index=0;
/**
*
*/
//是否为负数
boolean isPositive=true;
// 临界值
int limit = 0;
//取出字符串的第一位
char first=At(0);
//第一位是负数的情况下
if(first=='-'){
isPositive=false;
index++;
//设置整形最小的负数(-2147483648)
limit=_VALUE;
}
//第一位是整数的情况下
if(first=='+'){
isPositive=true;
//设置最大的.正数是(2147483647)
limit=_VALUE;
index++;
}
//设置比较的边界值(214748364)
int maxLimit=_VALUE/10;
int length=th();
int result=0;
while(index'0'&&ch<'9'){
//先判断原来的值是否大于比较的临界值
if(result>maxLimit){
throw new RuntimeException("整数越界了");
}
// 判断当前位的值+ch的值是否》整数的最大值
if(result*10>limit-(ch-'0')){
tln("result-->"+(result*10));
tln("max----->"+(_VALUE));
tln("result-->"+(_VALUE-(ch-'0'))+" ch="+(ch-'0'));
throw new RuntimeException("数组越界了s ");
}
index++;
result=result*10+(ch-'0');
}else{
throw new RuntimeException("不是整数 ");
}
}
//三目运算符
return isPositive?result:-result;
}
}
-
H3C中小企业无线解决方案
根据中国互联网络信息中心(CNNIC)公布的数据,截至2008年6月底,中国网民数量达到了2.53亿,首次大幅度超过美国,跃居世界第一位。中国也真正地步入网络时代。其中WLAN网络在提高企业效率、降低企业成本、提高用户满意度等方面有着突出的作用。那么随着网络使用范围的...
-
2017华为认证资深网络工程师联络中心模拟试题及答案
1、(题型:单选)eSpaceU2990是华为语音通信领域的旗舰级平台,支持()。A.宽带接入,但不支持窄带接入B.窄带接入,但不支持宽带接入C.宽窄带一体化接入,但不面向NGN网络D.宽窄带一体化接入,面向NGN网络2、(题型:单选)eSpaceU2990比通用服务器更好的保证系统的大容量、安全...
-
2016年计算机等级考试二级VFP笔试试题及答案
2016年计算机二级VF考试就要到了,为帮助大家巩固计算机VF知识点,本站小编为大家分享最新的VF考试题库及答案,仅供参考!一、选择题(每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1...
-
我的JavaEE学习路线图
从学习Java开发到现在虽然也已经快三年了,但是要说到分享一下经验实在是不敢当。权当是对自己的一个总结吧,希望大家不吝指教,互相交流。照旧,还是现来整理一下我学习Java的一个路线图吧,然后按照这个路线图来谈谈我的一些感受。一、Java核心这是学习Java的基础,掌握...