IAmYourFaja
IAmYourFaja

Reputation: 56904

Most efficient way to convert java.lang.Long to primitive int

I have a weird scenario where I need to convert several million java.lang.Longs into primitive int types. I need to do this several times a day, every single day. Normally, I wouldn't worry about this kind of simple casting, but since it's happening so much, so often, I have to ask: what's the most efficient way to do this, and why?

My first attempt:

Long myLong = getLong();
int x = Integer.valueOf(myLong.toString())

Although this seems like going 3 sides around the barn. Thanks in advance.

Upvotes: 9

Views: 31478

Answers (3)

user2144695
user2144695

Reputation: 39

Try this

Integer i = (int) (long) b;

Upvotes: -2

fge
fge

Reputation: 121712

The Long class has an .intValue() method, I guess this is what you are looking for...

(warning, you may lose precision etc etc -- but you probably know that already)

Upvotes: 24

Alexander Pogrebnyak
Alexander Pogrebnyak

Reputation: 45576

Try this

int x = myLong.intValue( );

Upvotes: 9

Related Questions