• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Negative int

 
visu Nekk
Ranch Hand
Posts: 122
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

Given an int, how to determine whether it is positive or negative. For e.g. int x = -1; How to determine x is negative?

Thanks,
Visu Nekk
 
Deepak Chopra
Ranch Hand
Posts: 433
Eclipse IDE Firefox Browser Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
look at the bit pattern of x..!!

if right most bit is 1, this means it is negative..!!!

x = -1 ===> 11111111 11111111 11111111 11111111
 
Jim Yingst
Wanderer
Sheriff
Posts: 18671
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I'm not sure the original poster was thinking of bit patterns. The answer might be as simple as
 
Deepak Chopra
Ranch Hand
Posts: 433
Eclipse IDE Firefox Browser Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
if he was asking this..!! he could have tested it first..before posting!!
 
Jim Yingst
Wanderer
Sheriff
Posts: 18671
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
This is the beginner section. Maybe he doesn't know how to use <, or write an if statement, or print the result. Who knows?
 
Paul Clapham
Sheriff
Pie
Posts: 20725
30
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
And also, if the rightmost bit of a binary integer is 1, that means it's an odd integer, not that it's a negative integer.
 
Campbell Ritchie
Sheriff
Posts: 48381
56
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Paul Clapham:
And also, if the rightmost bit of a binary integer is 1, that means it's an odd integer, not that it's a negative integer.
You mean leftmost, surely.

BTW: If you get a binary String with the Integer.toBinaryString() methods, it excludes leading 0s, so it always has 1 as the leftmost displayed digit. You will have to use a for loop and the insert method of StringBuilder (or similar) to pack it with 0s from the left.

[edit]For always has 1 read "almost always has 1" The value of 0 wouldn't have a 1 in![/edit]
[ January 30, 2008: Message edited by: Campbell Ritchie ]
 
Jim Yingst
Wanderer
Sheriff
Posts: 18671
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
[PC]: And also, if the rightmost bit of a binary integer is 1, that means it's an odd integer, not that it's a negative integer.

[CR]: You mean leftmost, surely.


I'm pretty sure he meant rightmost. Leftmost is what Sunny should have said, but rightmost is what he did say. Paul was commenting on that.
 
Deepak Chopra
Ranch Hand
Posts: 433
Eclipse IDE Firefox Browser Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ohh I am sorry, What I meant was left most bit..!!
Being a left handed person i often got confusion regarding that..! as My left is actually my right hand..but for other it is left hand..!!
 
Campbell Ritchie
Sheriff
Posts: 48381
56
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Yes, you are right; it was Sunny Jain who ought to have said leftmost.
 
Raghavan Muthu
Ranch Hand
Posts: 3381
Mac MySQL Database Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Sunny Jain:
Ohh I am sorry, What I meant was left most bit..!!
Being a left handed person i often got confusion regarding that..! as My left is actually my right hand..but for other it is left hand..!!


Good that the confusions are resolved earlier here. Also i believe it does not make any confusions wiht L-R , R-L associativities
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic