Win a copy of Re-engineering Legacy Software this week in the Refactoring forum
or Docker in Action in the Cloud/Virtualization forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Simple question

 
ji soi
Greenhorn
Posts: 13
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
System.out.println(Math.min(-0.0,+0.0) == Math.max(0.0,+0.0));
6: }

returns true.

can anyone explain me how ?
 
Corey McGlone
Ranch Hand
Posts: 3271
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
If you check out the Float API Spec, you'll see this under the description of the equals method:


Note that in most cases, for two instances of class Float, f1 and f2, the value of f1.equals(f2) is true if and only if

f1.floatValue() == f2.floatValue()


also has the value true. However, there are two exceptions:

* If f1 and f2 both represent Float.NaN, then the equals method returns true, even though Float.NaN==Float.NaN has the value false.
* If f1 represents +0.0f while f2 represents -0.0f, or vice versa, the equal test has the value false, even though 0.0f==-0.0f has the value true.

This definition allows hash tables to operate properly.

[ June 20, 2005: Message edited by: Corey McGlone ]
 
marc weber
Sheriff
Posts: 11343
Java Mac Safari
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Also note this post...

http://www.coderanch.com/t/249520/java-programmer-SCJP/certification/Majji-Comparision-results
 
ji soi
Greenhorn
Posts: 13
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks for ur clarification.

One more question

public First (String s) {

System.out.println(s);

}

}

public class Second extends First {

public static void main(String args []) {

new Second();

}

}

This program gives error " No constructor matching found in class first"

If i add empty constructor first()
it works.

I read in a book
Even if there is no constructor default const. will added by the compiler without no parameters.
then why is this error.

plz help me with this
 
marc weber
Sheriff
Posts: 11343
Java Mac Safari
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The compiler will provide a no-args constructor only if no other constructors are specified. If you specify any constructor (arguments or not), then the compiler will not add one.
[ June 20, 2005: Message edited by: marc weber ]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic