一个令我迷惑的数据类型的问题?

sheeling 2003-10-15 04:22:43
程序代码如下:
import java.io.*;

public class outfloat
{
public static void main(String[] args)
{
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
Double d;
String s;
System.out.println("please enter a double data...");
try
{
s=in.readLine();
d=Double.parseDouble(s);
int point=s.indexOf(".");
System.out.println(d+"d的整数部分:"+(long)d);
if(point==-1)
{
System.out.println(d+"小数为:0.0");
}
else
{
System.out.println(d+"小数部分为:"+Double.parseDouble((s.charAt(0)=='-')?"-":"")+"0."+s.substring(point+1,s.length()));
}

}catch(IOException e)
{
System.out.println(e);
}catch(NumberFormatException e)
{System.out.println("format error"+e);}


}
}
编译时出现如下错误提示:
D:\j2sdk\j2sdk1.4.2\bin>javac outfloat.java
outfloat.java:47: incompatible types
found : double
required: java.lang.Double
d=Double.parseDouble(s);
^
outfloat.java:49: inconvertible types
found : java.lang.Double
required: long
System.out.println(d+"d的整数部分:"+(long)d);

请问这有错吗?为什么会出现这样的错误?

^
...全文
37 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sheeling 2003-10-16
  • 打赏
  • 举报
回复
Double.parseDouble((s.charAt(0)=='-')?"-":"")这句的意思判断是否是一个带“-”的整数
fft123 2003-10-15
  • 打赏
  • 举报
回复
to 楼主:
你这句话里的“Double.parseDouble((s.charAt(0)=='-')?"-":"")”是干吗的?
起什么作用?
System.out.println(d+"小数部分为:"+Double.parseDouble((s.charAt(0)=='-')?"-":"")+"0."+s.substring(point+1,s.length()));

加上这句话,运行反而会报错
不加是对的
fft123 2003-10-15
  • 打赏
  • 举报
回复
parseDouble返回的是double类型的数据,而不是你用Double类定义的实例
注意大小写
把Double d;改成double d;就可以了
danceflash 2003-10-15
  • 打赏
  • 举报
回复
Double d;
String s;

这里,你的d被定义为一个Double对象
而 Double.parseDouble(s) 返回的是一个基本类型 double
所以,把
Double d;
改成:
double d;
就可以了

第二个报错原理相似
92讲视频课+16大项目实战+课件源码  为什么学习数据分析?       人工智能、大数据时代有什么技能是可以运用在各种行业的?数据分析就是。      从海量数据中获得别人看不见的信息,创业者可以通过数据分析来优化产品,营销人员可以通过数据分析改进营销策略,产品经理可以通过数据分析洞察用户习惯,金融从业者可以通过数据分析规避投资风险,程序员可以通过数据分析进一步挖掘出数据价值,它和编程一样,本质上也是一个工具,通过数据来对现实事物进行分析和识别的能力。不管你从事什么行业,掌握了数据分析能力,往往在其岗位上更有竞争力。   本课程共包含五大模块: 一、先导篇: 通过分析数据分析师的一天,让学员了解全面了解成为一个数据分析师的所有必修功法,对数据分析师不在迷惑。  二、基础篇: 围绕Python基础语法介绍、数据预处理、数据可视化以及数据分析与挖掘......这些核心技能模块展开,帮助你快速而全面的掌握和了解成为一个数据分析师的所有必修功法。 三、数据采集篇: 通过网络爬虫实战解决数据分析的必经之路:数据从何来的问题,讲解常见的爬虫套路并利用三大实战帮助学员扎实数据采集能力,避免没有数据可分析的尴尬。  四、分析工具篇: 讲解数据分析避不开的科学计算库Numpy、数据分析工具Pandas及常见可视化工具Matplotlib。  五、算法篇: 算法是数据分析的精华,课程精选10大算法,包括分类、聚类、预测3大类型,每个算法都从原理和案例两个角度学习,让你不仅能用起来,了解原理,还能知道为什么这么做。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧