This week's book giveaway is in the Clojure forum.
We're giving away four copies of Clojure in Action and have Amit Rathore and Francis Avila on-line!
See this thread for details.
Win a copy of Clojure in Action this week in the Clojure forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

list and array

 
hari harann
Ranch Hand
Posts: 54
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

1)created a list
2)printed the list
2)created an array and changed the list to array
4)altered the first element of list
5)change is reflected in the list
6)BUT NOT IN THE ARRAY. THE SAME OLD VALUE IS PRINTED HERE. it should have been changed in the array, when i change the element in the list..???

can anybody explain why is it so??
 
Ulf Dittmer
Rancher
Pie
Posts: 42966
73
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
it should have been changed in the array, when i change the element in the list..???

No. The array that gets created by toArray is independent of the original List. It contains the same objects, but it will not be updated if the List is updated (the List does not know about the array).

If you look at the source code of ArrayList.toArray you will see that there is no connection between the two.
 
George Gates
Ranch Hand
Posts: 34
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hari Harann,

Good discovery.

The book (K&B) states that only when you use asList(),any change in one (array or list) also gets updated in the other.

This is however not true for toArray(). This exception is not mentioned in the book though.
 
I agree. Here's the link: http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic