Hi All,
How can I implement a one dimentional array,s.t. each cell of array is
a vector.
e.g.
a-> 1 2 3
b-> 3 4 5 7 8
c-> 4 5 5 6 0 0 0
thanks a lot
Chris Brat - 29 Sep 2006 08:19 GMT
Hi,
This will do what you describe but why do you want to?
What are you trying to achieve?
Regards,
Chris
import java.util.Arrays;
import java.util.Vector;
public class A {
public static void main(String[] args){
Vector[] vector = new Vector[10];
for (int i = 0; i < 10; i++){
vector[i] = new Vector();
}
for (int i = 0; i < 10; i++){
vector[i].add(String.valueOf(i));
}
System.out.println(Arrays.toString(vector));
}
}
Chris Brat - 29 Sep 2006 08:21 GMT
If you would like the number of vectors to be dynamic i.e. the size of
the array
Chris
jack.smith.sam@gmail.com - 29 Sep 2006 08:34 GMT
Thanks, Chris. What I want is dynamic array of vectors, i.e. vectors of
vectors (or maybe more effiecient data structure).
The reason is I want to store data in 2d data structure but I do not
size of any dimension
> If you would like the number of vectors to be dynamic i.e. the size of
> the array
>
> Chris
Chris Brat - 29 Sep 2006 08:48 GMT
Unless you need the data structure to be synchronized between threads
rather use an ArrayLists instead of a Vectors as Vectors are
synchronized.
This code should do what you are describing but I dont think its a good
idea - very clunky and possibly error prone.
import java.util.ArrayList;
import java.util.List;
public class A {
public static void main(String[] args){
List list = new ArrayList();
for (int i = 0; i < 10; i++){
list.add(new ArrayList());
}
for (int i = 0; i < 10; i++){
((List)list.get(i)).add(String.valueOf(i));
}
System.out.println(list);
}
}
How do you want to process the data stored in this structure? Do you
want to iterate over entire rows/columns or select individual items at
particular indexes [x,y] ?
If the latter then take a look at the MultiKeyMap in the commons
collections libs.
Chris
Deniz Dogan - 29 Sep 2006 13:39 GMT
> Hi All,
>
[quoted text clipped - 7 lines]
>
> thanks a lot
I can't help but think that the question that you ask is part of school
work that should be done by you and no one else. I don't know the
general ethics of this newsgroup, but a lot of Java IRC channels don't
complete school work for you, for your own good.
This is a very simple and basic question that you surely would be able
to answer if you knew the least bit about Java programming and that's
why I'm being so suspicious.
jack.smith.sam@gmail.com - 29 Sep 2006 17:25 GMT
No. This is not part of my school homework.
> > Hi All,
> >
[quoted text clipped - 15 lines]
> to answer if you knew the least bit about Java programming and that's
> why I'm being so suspicious.
Simon Brooke - 29 Sep 2006 19:43 GMT
> No. This is not part of my school homework.
>> > Hi All,
[quoted text clipped - 16 lines]
>> to answer if you knew the least bit about Java programming and that's
>> why I'm being so suspicious.
Well, I wouldn't do it like that. If you want to have it grow dynamically
then a vector or list of vectors would suit you better. If you do want to
define an array of vectors, then it's defined just like any other array.

Signature
simon@jasmine.org.uk (Simon Brooke) http://www.jasmine.org.uk/~simon/
A message from our sponsor: This site is now in free fall