Erweiterbares Array

frager

Erfahrenes Mitglied
Hallo!

Hab schon lange kein Java mehr gemacht und wollte jetzt ein Porgraemmche schreiben. ^^ Ich brauch ein erweiterbares Array um dort long zu speichern. Habs mit Vector versucht aber der Compiler mecker dann
C:\Documents and Settings\rofl\Desktop\prg\nfo.java:80: inconvertible types
found : java.lang.Object
required: long
while((long)(v.get(i))-(long)(v.get(i=1)) == 1) {

Note: blabla.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
(Das ist wegen v.add(l); ka warum)

Danke im Voraus! :-)
 
hallo,
Von dem Vector kannst du es in einen String casten, und danach in eine Long-Klasse.

Code:
String test;
test = (String) v.get(i);
Long dtest = Long.decode(test);

gruss munuel
 
hmm, danke! ^^

aber wenn ich long in Long umwandle, dann lieber gleich bei v.add() oder? Weil der Compiler dann schon beim v.add(i) meckert..
hier noch mal mit javac.exe -Xlint compiliert:
nfo.java:59: warning: [unchecked] unchecked call to add(E) as a member of the raw type java.util.Vector
v.add(file.getFilePointer());

ich haette da eher spontan an Long.parseLong(String s) gedacht, ka

aber gibts da nicht eine elegantere Loesung, ohne hin und her casten und parsen? Weil des ist irgendwie zu verwurstelt so.....
 
hallo,
Du kannst ja auch nur mit Long arbeiten, also das du keine long in den Vector schreibst sondern Long-objekte.
Ich geb zu das sie Lösung nicht besonders toll ist :-)
Du kannst auch versuchen ein ArrayList statt einem Vector zu benutzen.
Warum benutzt du eigentlich kein normales Array, du hast ja gar keine Objecte!
long [ ] test;
Und du musst nicht casten!
Gruss munuel
 
weil ich nicht weiss wieviele elemente im Array drin sein werden. Ich suche in einer Datei nach bestimmten zeichen und speichere dann die position dieser zeichen in einem array(vector). Ich weiss ja am anfang nicht wieviele solcher zeichen in dieser datei enthalten sind.....
 
Hallo,

schau mal hier:

Code:
import java.io.PrintStream;
import java.util.ArrayList;
import java.util.List;

public class ExtensibleArray {

	private static PrintStream o = System.out;
	
	public static void main (String[] args){
		List<Long> list = new ArrayList<Long>();
		
		long[] l = {1,2,3,4,5,6,7,8,9};
		
		for (int i = 0 ; i < l.length; i++)
			list.add(l[i]);
		for (int i = 0; i < l.length ; i++)
			o.println(list.get(i));
	}
	
}


Vg Erdal
 
Zurück