File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
Win a copy of Clojure in Action this week in the Clojure forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Minimum and maximum useable values for int long

 
Simon Evans
Ranch Hand
Posts: 93
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Dear Programmers,

In the text I have read, it states that for an integer type long, the biggest value it can be given is:-
9223372036854775807;
and the smallest value it can be given is:-
-9223372036854775808;
however in the following program:-

both initialisations return a compiler error - that bigLong is too big and the smallLong is too big : -


How is this? Is it rectifiable?

Hope you can help.

Yours

Simon
 
Henry Wong
author
Marshal
Pie
Posts: 20834
75
C++ Chrome Eclipse IDE Firefox Browser Java jQuery Linux VI Editor Windows
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Literals are by default ints -- not longs. So, it is complaining that the literal is too big for an int, not that it is too big to be assigned to a long.

To have long literals, use an "L" suffix.

long l = 123456L;

Henry
 
Simon Evans
Ranch Hand
Posts: 93
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Dear Henry Wong,
Your are right, it runs okay now - thank you for your advice.
Yours
Simon
 
Campbell Ritchie
Sheriff
Pie
Posts: 47244
52
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
There are similar problems with floats, which may require an "f" suffix, and you can suffix "d" to doubles. This is one of the few places where Java is case-insensitive, but always use a capital L, not a small l; I hope the reasons will be obvious.
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic