java 不知道哪里错了 返回的值 总是false

public class Point { int x; int y; public Point(){} public Point(int x,int y){ this.x = x; this.y = y; } /**计算当前点到一个坐标的距离**/ public double distance(int x,int y){ return Math.sqrt(this.x-x)*(this.x-x)+(this.y-y)* (this.y-y); } /**计算当前点到原点的距离**/ public double distance(){//重载上个方法 return this.distance(0,0); } /**计算当前点到另一点的距离**/ public double distance(Point other){ return this.distance(other.x,other.y); }}
-------------------------------------------------------------------------------------------------------------------------------------------
public abstract class Shape { protected Point location; public abstract double area();//计算面积的抽象方法 public abstract boolean contains(int x,int y);//计算是否包含点的抽象方法 public boolean contains(Point p){//重写上面抽象的contains方法 return this.contains(p.x,p.y); }}------------------------------------------------------------------------------------------------------------------------------------------
public class Circle extends Shape { private int r; public Circle(int x,int y,int r){ this(new Point(x,y),r); } public Circle(Point center,int r){ super.location=center; this.r=r; } /**实现父类的抽象方法*/ public double area(){ return Math.PI*r*r; } public boolean contains(int x,int y){ return super.location.distance(x,y)<=r; }}
------------------------------------------------------------------------------------------------------------------------------------------
public class ShapeDemo { public static void main(String[] args) { Shape s = new Circle(3,4,5); System.out.println(s.area()); Point p1 = new Point(6,8); System.out.println(s.contains(p1)); }
}

你的distance中的返回值少了一个括号呀,

在整个算式的外围加上一个括号,不然的话,Math.sqrt只是计算的(this.x-x)开平方,结果就不对了。

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-01-13
return Math.sqrt ‘( ’ (this.x-x)*(this.x-x)+(this.y-y)* (this.y-y) ‘ )’ ;
这句话少了括号。
要注意方法的优先级是要高于算术运算符的
第2个回答  2014-01-13
distance()在哪里

java 不知道哪里错了 返回的值 总是false
你的distance中的返回值少了一个括号呀,在整个算式的外围加上一个括号,不然的话,Math.sqrt只是计算的(this.x-x)开平方,结果就不对了。

java为什么显示的结果为false?
在JAVA里,==,>,<,!=,>=,<= 这些是判断符号,所以返回的值是只有false或者是true两种if跟while语句后面一般都有这些符号来判断条件的成立与否,true则怎样怎样,false则执行其他。

为什么总是返回false
可能是你路径有问题或者文件根本不存在。主要看看你路径名是不是有问题

这段JAVA代码哪里错了?
答案很简单,你的input只有一个行数据,input.hasNext()返回的是false 不信你自己打印一下。根本没有进入while语句当中

JAVA 执行插入存储过程总返回false
你是没有弄清楚它的方法说明,就像上一楼说的,你没有弄清楚API 如果你要判断是否新增或作插入等操作是否成功,execute之后,你应该再调用 int tmp=cs.getUpdateCount()的方法(方法名应该没记错,就是返回你cs上一次操作时候改变的记录的数目),之后再return tmp>0即可 ...

为什么file.isdirectory返回值都是false
要确认file 变量的路径是个存在的文件夹,如果是一个文件或者该文件夹路径不存在,都会返回false

在JAVA中,File类的setLastModified方法总是返回false是为什么
就是如果存在的话返回“true”,否则就是返回“false”。举例:\/\/判断文件是否存在publicstaticStringfileExists(StringplainFilePath){Filefile=newFile(plainFilePath);if(!file.exists()){return"false";}else{return"true";}}

java false是什么意思
Java中的false是一个布尔值,代表“假”或“错误”的意思。当条件判断为false时,程序会执行条件语句中else后的代码块。false与true是Java中的两个基本布尔值,用于控制程序的流程,进行逻辑判断。在Java中,false还可用于表示方法的返回值。如果一个方法返回false,这意味着该方法执行时出现了错误或异常...

这个java代码为什么输出是false?明明含有“.”啊 ,求大神解答
String 类的 matches 方法,需要完全匹配才返回 true。虽然包含了 “.“,但字符串的内容不只是一个点,不是完全匹配。

...返回true,为什么我随便输入个字符返回的都是false啊
"true")));} 注意 return ((paramString != null) && (paramString.equalsIgnoreCase("true")));这一句 如果你的paramString不为null且paramString忽略大小写后等于“true”就会返回true,不然就是false 即是说,只有当你的String为“true”或者它的大小写变体的时候,才会为true ...

相似回答
大家正在搜