java 中如何判断输入的是int还是double
因为要对不同的数据类型做不同的处理。比如对int型要干嘛干嘛,对double型要干嘛干嘛,但是输入的好像都是String,怎么判断有没有小数点呢?...
因为要对不同的数据类型做不同的处理。比如对int型要干嘛干嘛,对double型要干嘛干嘛,但是输入的好像都是String,怎么判断有没有小数点呢?
展开
10个回答
展开全部
一般不会你取出来的出局不知道是什么类型的啊
笨点的方法做遍历 String a
Boolean flag=true
for(int i = 0;i<a.length(),i++){
if(".".equals(a.cahrAt(i))){
flag = false;
}
}
if(flag=true){
int
}else{
double
}
笨点的方法做遍历 String a
Boolean flag=true
for(int i = 0;i<a.length(),i++){
if(".".equals(a.cahrAt(i))){
flag = false;
}
}
if(flag=true){
int
}else{
double
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接 +"";来
转换成字符串,用indexOf(".")>0来判断是否是int,或者double类型
转换成字符串,用indexOf(".")>0来判断是否是int,或者double类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
引用muse4498的回答:
你可以用一个字符串来保存你的输入,然后你可以将输入利用String类库中的函数进行转换,或者利用contains()函数看,是否还有小数点。
System.out.println("please input the ten strings:");
Scanner sc = new Scanner(System.in);
String number = sc.nextLine();
if(number.contains(".")){
//说明是一个小数
double d = Double.valueOf(s);
}
else{
//
int i = Integer.valueOf(s);
}
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
你可以用一个字符串来保存你的输入,然后你可以将输入利用String类库中的函数进行转换,或者利用contains()函数看,是否还有小数点。
System.out.println("please input the ten strings:");
Scanner sc = new Scanner(System.in);
String number = sc.nextLine();
if(number.contains(".")){
//说明是一个小数
double d = Double.valueOf(s);
}
else{
//
int i = Integer.valueOf(s);
}
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
展开全部
string 120.00
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用try...catch就很方便了,同时做了数据类型转换:
//s是获得到的String值
try{
int a = Integer.parseInt(s);
}catch(NumberFomatException e1){
try{
double b = Double.parseDouble(s);
}catch(NumberFomatException e2){
System.out.println("输入数据类型不符!");
}
}
还有,照一楼的说法,做遍历查找是否包含小数点,还不如用indexof()更好,要循环干嘛。
//s是获得到的String值
int index = s.indexOf(".");
//indexOf()返回小数点的下标,找不到的话返回-1
boolean flag = false;
if(index!=-1){
flag = true; //true表示有小数点,就是说是double数据
}
//if判断可以用三目运算符代替:flag = (index==-1)? false:true;
//s是获得到的String值
try{
int a = Integer.parseInt(s);
}catch(NumberFomatException e1){
try{
double b = Double.parseDouble(s);
}catch(NumberFomatException e2){
System.out.println("输入数据类型不符!");
}
}
还有,照一楼的说法,做遍历查找是否包含小数点,还不如用indexof()更好,要循环干嘛。
//s是获得到的String值
int index = s.indexOf(".");
//indexOf()返回小数点的下标,找不到的话返回-1
boolean flag = false;
if(index!=-1){
flag = true; //true表示有小数点,就是说是double数据
}
//if判断可以用三目运算符代替:flag = (index==-1)? false:true;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
呵呵!
都说的挺好的!
都说的挺好的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询