Win a copy of Think Java: How to Think Like a Computer Scientist this week in the Java in General forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Map instantiate with key-value

 
nimo frey
Ranch Hand
Posts: 580
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
How can I do this in one line?



Something like:

 
Christophe Verré
Sheriff
Posts: 14691
16
Eclipse IDE Ubuntu VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Unless I'm missing something obvious, the API does not allow you to do it. Is it bothering you to put it in different lines ?
 
Sherif Shehab
Ranch Hand
Posts: 485
Android Eclipse IDE Oracle
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Christophe Verre:
Unless I'm missing something obvious, the API does not allow you to do it. Is it bothering you to put it in different lines ?


Hi , i think Christophe is right API doesn't allow this check this for more deatils
 
Rob Spoor
Sheriff
Pie
Posts: 20527
54
Chrome Eclipse IDE Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You can create an anonymous subclass with an initializer block:

I wouldn't do that though, since a) it's confusing, and b) it's longer than just calling the put methods.
 
Christophe Verré
Sheriff
Posts: 14691
16
Eclipse IDE Ubuntu VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I wouldn't call Rob's trick to be one line long
 
nimo frey
Ranch Hand
Posts: 580
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
okay thanks.

It does not matter, I was just wondering, if it would be possible with anonymous declarations or the like.

thanks
 
Rob Spoor
Sheriff
Pie
Posts: 20527
54
Chrome Eclipse IDE Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Christophe Verre:
I wouldn't call Rob's trick to be one line long

But it can be; just remove all the enters

This is actually similar to how .NET 3.0 and up handle object initialization; the inner bracket pair is removed but the rest is the same.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic