/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Vektor
Fra : Hans Hvelplund Odbor~


Dato : 06-12-00 14:10

jeg har en Vektor packages hvor jeg har tilføjet nogle objekter af klassen D
med packages.add(blabla)

alligevel bliver følgende false, hvorfor?
(packages.firstElement() instanceof D)

der er ikke tilføjet andre objekter end nævnte til vektoren



 
 
Hans Hvelplund Odbor~ (06-12-2000)
Kommentar
Fra : Hans Hvelplund Odbor~


Dato : 06-12-00 14:58

nu har jeg fundet problemet.
elementet i packages var

af typen D[], dvs. at packages.firstElement() var instans af Array, men jeg
vil jo vide om det er et array af D eller C
hvordan det?

Jeg vil finde ud af om et det nedereste objekt i en Vektor er et element i
et array af klassen String (eller D ell......) hvordan gør jeg det?



Ulrik Magnusson (06-12-2000)
Kommentar
Fra : Ulrik Magnusson


Dato : 06-12-00 15:04

> af typen D[], dvs. at packages.firstElement() var instans af Array, men jeg
> vil jo vide om det er et array af D eller C hvordan det?

Det er vel et D array, da D[] kun kan indeholde objekter af typen D, eller
misforstår jeg dit spørgsmål?

Object darray = new D[1];
if( darray instanceof D[] )
{
System.out.println("davs");
}

Ulrik Magnusson


Hans Hvelplund Odbor~ (06-12-2000)
Kommentar
Fra : Hans Hvelplund Odbor~


Dato : 06-12-00 15:48

tak, nu kom jeg lidt videre, men jeg har stadigt et problem. Hvis kører
nedenstående metode for jeg en fejl:

java.lang.ArrayIndexOutOfBoundsException
at C1.print(C1.java:36)
at Vectortest.main(Vectortest.java:19)
Exception in thread "main" Process Exit...

Jeg kan ikke lige se hvad jeg gør galt, men jeg vil gerne tilføje et element
af et array til vectoren i den ene ende, og når jeg så hiver dem ud i den
anden ende vil jeg gerne vide hvilken klasse objektet stammer fra da der
findes forskellige metoder i D og R. Jeg ved ikke om jeg beskriver det helt
rigtig, men jeg ved hvilke metoder der findes i D og R, og vil gerne vide
hvilket objekt jeg har med at gøre så jeg kan udføre de rigtige metoder på
det.

public void print()
{

D[] dalle = new D[3];
R[] ruth = new R[3];

packages.clear();
packages.add(dalle[1]);
packages.add(ruth[1]);
packages.add(dalle[2]);
packages.add(ruth[2]);
packages.add(dalle[3]);
packages.add(ruth[3]);

if(packages.firstElement() instanceof D[])
System.out.println("Nedereste objekt er af typen D");

else if (packages.firstElement() instanceof R[])
System.out.println("Nedereste objekt er af typen R");

else System.out.println("GNU");
packages.remove(0);
}




N/A (06-12-2000)
Kommentar
Fra : N/A


Dato : 06-12-00 16:08



N/A (06-12-2000)
Kommentar
Fra : N/A


Dato : 06-12-00 16:08



Hans Hvelplund Odbor~ (06-12-2000)
Kommentar
Fra : Hans Hvelplund Odbor~


Dato : 06-12-00 16:08

jeg snævret det lidt og erstattet

if(dalle[2] instanceof D)
men det giver false?



Morten Primdahl (06-12-2000)
Kommentar
Fra : Morten Primdahl


Dato : 06-12-00 16:10

Hans Hvelplund Odborg wrote:
>
> ja ok der er vist dunke slag til mig, MEN
>
> jeg får stadig ikke det ønskede. Nu skriver metoden kun
> GNU
> GNU
> GNU
> GNU
> GNU
> ....
> ....
> ....
D[] dalle = new D[3];
R[] ruth = new R[3];

packages.clear();
packages.add(dalle[1]);
packages.add(ruth[1]);
packages.add(dalle[2]);
packages.add(ruth[2]);
packages.add(dalle[3]);
packages.add(ruth[3]);

if(packages.firstElement() instanceof D[])
System.out.println("Nedereste objekt er af typen D");


firstElement returnerer fex. dalle[1], hvilket ikke er
en instans af D[] men af D.


--
Morten Primdahl Caput A/S Tel +45 70 12 24 42
morten@caput.com Nygade 6 Fax +45 70 11 24 42
http://www.caput.com/ DK-1164 Kbh K

Lars Dam (06-12-2000)
Kommentar
Fra : Lars Dam


Dato : 06-12-00 16:21

On Wed, 06 Dec 2000 16:10:13 +0100, Morten Primdahl <morten@caput.com>
wrote:

>Hans Hvelplund Odborg wrote:
>>
>> ja ok der er vist dunke slag til mig, MEN
>>
>> jeg får stadig ikke det ønskede. Nu skriver metoden kun
>> GNU
>> GNU
>> GNU
>> GNU
>> GNU
>> ....
>> ....
>> ....
> D[] dalle = new D[3];
> R[] ruth = new R[3];
>
> packages.clear();
> packages.add(dalle[1]);
> packages.add(ruth[1]);
> packages.add(dalle[2]);
> packages.add(ruth[2]);
> packages.add(dalle[3]);
> packages.add(ruth[3]);
>
> if(packages.firstElement() instanceof D[])
> System.out.println("Nedereste objekt er af typen D");
>
>
>firstElement returnerer fex. dalle[1], hvilket ikke er
>en instans af D[] men af D.

Jeg prøver lige igen:

Dette er stadig ikke nok. Elementerne i array'ene er ikke
initialiseret, så der bliver kun puttet en masse null's ned i
packages:

D[] dalle = new D[3];
dalle[0] = new D();
dalle[1] = new D();
dalle[2] = new D();
:
:
packages.add(dalle[1]);
:
:

vh. ld


--
"Time is the fire in which we burn"

Hans Hvelplund Odbor~ (06-12-2000)
Kommentar
Fra : Hans Hvelplund Odbor~


Dato : 06-12-00 16:39

Yeah Yeah )
tusind tak for en meget hurtig repsons.
Hvis jeg kan hjælpe med noget så bare ring.
Ej ok, det kan jeg nok ikke men tusind tak alligevel.

Mvh
Hans Odborg



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste