Daten im Vector verschachteln!

soa

Erfahrenes Mitglied
Hallo zusammen,

ich habe folgendes Problemchen:

Ich möchte einen String zusammen mit einer long Variablen als Datensatz
in einen Vector einspielen, so dass der String und die nummer zusammen an einer
Index-Position stehen. Habe das zuerst mit 2 Vectoren gemacht, ist aber ziemlich umständlich.

Also:

Vector v = new Vector (20, 2);
v.add(object);

Wie kann die die Daten in ein Objekt zusammenführen?

Danke

SOA
 
Hi,
einfach eine neue Klasse anlegen, die lediglich die beiden Variablen für den String und den long "verwaltet". Dann diese Klasse einfach instanziieren und dieses Objekt in den Vector legen.
 
Hallo!

Schau mal hier:
Code:
package de.tutorials;

import java.util.Iterator;
import java.util.Vector;

public class Test10 {

	public static void main(String[] args) {
		new Test10().doIt();
	}

	private void doIt() {
		Vector v = new Vector();

		//so:

		v.add(new Object[] { "Hallo", new Long(10L) });
		v.add(new Object[] { "Hallo1", new Long(20L) });
		v.add(new Object[] { "Hallo2", new Long(30L) });
		v.add(new Object[] { "Hallo3", new Long(40L) });

		Object[] oA = v.toArray();
		for (int i = 0; i < oA.length; i++) {
			Object[] o = (Object[]) oA[i];
			System.out.print("String: " + o[0]);
			System.out.println(" long: " + ((Long) o[1]).longValue());
		}

		//oder so:

		v.clear();

		Helper h1, h2, h3, h4;
		h1 = new Helper("ABC0", 1L);
		h2 = new Helper("ABC1", 2L);
		h3 = new Helper("ABC2", 3L);
		h4 = new Helper("ABC3", 4L);

		v.add(h1);
		v.add(h2);
		v.add(h3);
		v.add(h4);

		for (Iterator iter = v.iterator(); iter.hasNext();) {
			System.out.println(iter.next());
		}

	}

	class Helper {
		private long id;

		public long getId() {
			return id;
		}

		public void setId(long id) {
			this.id = id;
		}

		public String getValue() {
			return value;
		}

		public void setValue(String value) {
			this.value = value;
		}

		private String value;

		public Helper(String val, long id) {
			this.value = val;
			this.id = id;
		}

		public String toString() {
			return this.value + " " + this.id;
		}
	}
}

Gruß Tom
 
Zurück