File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

java rule round up #113

 
Jeroen van der Velden
Greenhorn
Posts: 10
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Can somebody explain to me why the following code compiles and runs:
double x; x=24.0/0;
The answer says it will compile and run because floating point nummers don't produce a divide-by-zero ArithmeticException. They will give a result which is Not a Number value. But for me it looks like 24.0 is a double and not a floating point number because it has no f attached to it.
 
Valentin Crettaz
Gold Digger
Sheriff
Posts: 7610
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
A double primitive is also a floating point number. By default, a floating point value is a double. If you append a 'f' after the number, it becomes a float value.
 
Reshma Shanbhag
Ranch Hand
Posts: 204
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Jeroen,
Welcome to Javaranch .
Both float(32 bits long) and double(64 bits long) are floating point values (that is both are decimal values) with different ranges. Default floating point value is 'double'.
For example
float f = 12.0, this will give a compile time as error as '12.0' denotes a double value.to make this statement compile we need to modify it as float f = 12.0F.
So the above answer mentioned is right.
reshma
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic