• 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:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

JTable(Vector param1, Vector param2)

 
Ranch Hand
Posts: 15304
6
Mac OS X IntelliJ IDE Chrome
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Recently I have learned that an ArrayList is acually better than a Vector because it is faster. Does anyone know why Sun would not have included a method in there JTable to accept ArrayLists as parameters?
 
Ranch Hand
Posts: 732
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
good question
maybe because of backward compatibality.....
anyway it is very annoying to use the Vectors when constructing a JTable and i agree with you.
 
Ranch Hand
Posts: 508
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
hi,
Vector is synchronized while ArrayList is initially not. If they would accept an ArrayList as argument they would have to make sure that it's synchronized. Not, that this is a big problem.
I think they just didn't change the implementation of DefaultTableModel which uses Vector though they are propagating the use of ArrayList to everyone else.
Anyway, as Vector is a subtype of collection it's not that difficult to use ArrayLists and initialize a JTable using a vector, nonetheless:
ArrayList data = new ArrayList();
JTable table = new JTable(new Vector(data));
Another possibility is to create your own TableModel which uses a synchronized ArrayList or HashMap or whatever is the most efficient container in this case.
cheers
 
I wasn't selected to go to mars. This tiny ad got in ahead of me:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic