• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Tim Cooke
  • Campbell Ritchie
  • paul wheaton
  • Ron McLeod
  • Devaka Cooray
Sheriffs:
  • Jeanne Boyarsky
  • Liutauras Vilda
  • Paul Clapham
Saloon Keepers:
  • Tim Holloway
  • Carey Brown
  • Piet Souris
Bartenders:

Should I switch by ints or chars?

 
Ranch Hand
Posts: 169
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I was wondering, whether I should have my switch statement switch on a char or an int or even a short? Has anybody got an idea which one is best?
Stuart
 
tumbleweed
Posts: 5089
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Stuart Switch requires that the value can be converted to int. Considering that char and short will need to be converted I assume that int will be best.
[This message has been edited by Johannes de Jong (edited July 23, 2001).]
 
Stuart Goss
Ranch Hand
Posts: 169
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Are you sure that switch converts the expression? I looked in the java language specification... and I couldn't find anything.

The type of the Expression must be char, byte, short, or int, or a compile-time error occurs.


But I suppose the expression is transformed into an integer in the byte code, or not?
I'm still not convinced, jdj
 
Sheriff
Posts: 9109
12
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
What are you gaining by using a short?
 
Chicken Farmer ()
Posts: 1932
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Switch takes anything that is int-compatible. Since the others can fit within an int, they work.
I agree with Marilyn, I've never used a short. The memory savings just aren't warranted to bother with the need for casting and such.
Jason
 
Stuart Goss
Ranch Hand
Posts: 169
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
So, unless I'm switching on chars like '+' or '-' there is no need to use char to switch on, I can just take an int. I'll do that next time, thanks a lot.
Stuart
 
reply
    Bookmark Topic Watch Topic
  • New Topic