• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flash > Flash Fortgeschritten > Flash 8

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27-02-2010, 18:16   #1 (permalink)
Neuer User
 
Benutzerbild von velocity.
 
Registriert seit: May 2005
Beiträge: 310
Zugriff auf nested Array!

Hi!

Ich habe ein Problem mit einem Mehrdimensionalem Array, folgende konstellation funktioniert einfach nicht:

Test = new Array(new Array(new Array()), new Array());

Folgenderweise greife ich darauf zu:

Test[0[0[0]]] = "TEST";

Leider funktioniert das nicht, irgendwo passt was mit der verschachtelung nicht.
Vielen Dank schon einmal!
__________________
- we start 2009 -


http://www.aelfsciene.com - © Copyright. All rights reserved.
velocity. ist offline   Mit Zitat antworten
Alt 27-02-2010, 18:23   #2 (permalink)
AS Creator
 
Registriert seit: Nov 2009
Beiträge: 58
ActionScript:
  1. var Test:Array = new Array(
  2.                            new Array(new Array(1, 2)),
  3.                            new Array(3, 4),
  4.                            5);
  5. trace(Test[0][0][0]); // 1
  6. trace(Test[0][0][1]); // 2
  7. trace(Test[1][0]); // 3
  8. trace(Test[1][1]); // 4
  9. trace(Test[2]); // 5
  10.  
messeb ist offline   Mit Zitat antworten
Alt 27-02-2010, 18:30   #3 (permalink)
Neuer User
 
Benutzerbild von velocity.
 
Registriert seit: May 2005
Beiträge: 310
Hi!

Danke erstmal für die schnellen Post, aber ich möchte es auch logisch verstehen. Warum kann ich mit:

trace(Test[0][0][0]);

auf die 1 zugreifen. Die Verschachtelung müsste doch lauten:

trace(Test[0[0[0]]])

siehte diese Verschachtelung:

var Test:Array = new Array(new Array(new Array(1, 2)),new Array(3, 4), 5);
__________________
- we start 2009 -


http://www.aelfsciene.com - © Copyright. All rights reserved.
velocity. ist offline   Mit Zitat antworten
Alt 27-02-2010, 18:49   #4 (permalink)
AS Creator
 
Registriert seit: Nov 2009
Beiträge: 58
???
Wenn wir uns
ActionScript:
  1. var Test:Array = new Array(
  2.                            new Array(new Array(1, 2)),
  3.                            new Array(3, 4),
  4.                            5);
ansehen, bekommen wir über
ActionScript:
  1. Test[0]
ActionScript:
  1. new Array(new Array(1, 2))
zurück.

Wenn wir damit weiter machen
ActionScript:
  1. var A1:Array = new Array(new Array(1, 2));
bekommen wir über
ActionScript:
  1. A1[0]
ActionScript:
  1. new Array(1,2)
zurück.

Dann mit
ActionScript:
  1. var A2:Array = new Array(1, 2);
können wir über
ActionScript:
  1. A2[0]
auf die 1 zugreifen.

Oder in einem Zugriff über
ActionScript:
  1. Test[0][0][0]

Deinen Syntax, den du verwenden willst, gibt es in ActionScript nicht. Eventuell solltest du dir in der Flashhilfe oder in einem Anfängerbuch die Grundzüge mit dem Umgang von Arrays anschauen.
messeb ist offline   Mit Zitat antworten
Alt 27-02-2010, 21:46   #5 (permalink)
Neuer User
 
Benutzerbild von velocity.
 
Registriert seit: May 2005
Beiträge: 310
Ok, aber irgendwie hab ich immer noch ein verständnis problem:

bei folgender verschachtelung:

X=new Array (new Array(new Array(new Array()))

warum funktioniert dann folgendes nicht:

X[0][1][0] = "TEST";
trace(X[0][1][0]); >>> undefined.
__________________
- we start 2009 -


http://www.aelfsciene.com - © Copyright. All rights reserved.
velocity. ist offline   Mit Zitat antworten
Alt 27-02-2010, 22:17   #6 (permalink)
AS Creator
 
Registriert seit: Nov 2009
Beiträge: 58
Weil es an [0][1][0] keinen Array gibt.
Den es müsste einen geben, da du dem ersten Element (Index 0; [0]) von diesem dann einen Wert zuweisen willst.
Das müsste nämlich so aussehen:
ActionScript:
  1. var X:Array =   new Array(
  2.                     new Array(
  3.                         new Array(),
  4.                         new Array(
  5.                             // Werte für [0][1][0 ... n]
  6.                         )
  7.                     )
  8.                 );
  9.  
  10. X[0][1][0] = "Test";
  11. trace(X[0][1][0]);

Aber da kann ich dir wirklich nur empfehlen, dich nochmal selbstständig mit dem Thema zu beschäftigen.
messeb ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Array-Zugriff stens ActionScript 1 1 24-10-2006 17:33
probleme mit nested array diplomkandidat ActionScript 1 2 19-09-2005 01:47
Zugriff auf Array incubi ActionScript 1 4 24-02-2005 17:36
zugriff anf Array olivergries Flash 4 und Flash 5 4 29-11-2004 16:39
array zugriff? Tschdaeff ActionScript 1 2 31-03-2002 17:39


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:18 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele