Ich habe Code, der Reflexion für ein Eingabeobjekt verwendet und einige Verarbeitung für die Daten im Objekt verarbeitet. Das Eingabeobjekt kann eine beliebige Zeichenfolge wie String oder int oder double usw. sein, manchmal kann es ein multidimensionales Array sein. Ich weiß, wie man es für zweidimensionale Arrays macht, aber ich würde etwas bevorzugen, das für jedes gegebene dimensionale Array funktionieren würde. Jede Anleitung, um dies zu erreichen, wird hilfreich sein. Danke,Reflexion und multidimensionale Arrays
Antwort
Klingt wie Sie entweder Rekursion oder eine Schleife oder beides benötigen.
void getStuffFromArray(Object obj) {
// assuming we already know obj.getClass().isArray() == true
Class<?> componentType = obj.getClass().getComponentType();
int size = Array.getLength(obj);
for (int i = 0; i < size; i++) {
Object value = Array.get(obj, i);
if (value.getClass().isArray()) {
getStuffFromArray(value);
} else {
// not an array; process it
}
}
}
nette Antwort. Ich habe einen ähnlichen Code ausgearbeitet, aber Sie haben ihn zuerst bekommen. –
Warum müssen Sie "clazz" separat eingeben? ist es nicht nur obj.getClass()? – newacct
Ha, das ist, was ich bekomme, um Code in die Antwortbox zu schreiben. –
- 1. Socket.io und multidimensionale Arrays?
- 2. Multidimensionale Arrays
- 3. Multidimensionale Arrays in PHP
- 4. array_unshift für multidimensionale Arrays
- 5. C# - Multidimensionale int Arrays
- 6. Reconcile np.fromiter und multidimensionale Arrays in Python
- 7. php multidimensionale Arrays ineinander verschmelzen
- 8. Iterieren über Arrays von Reflexion
- 9. Iteration durch multidimensionale Arrays mit d3.js
- 10. Kodieren multidimensionale php-Arrays zu JSON
- 11. skalare dynamische multidimensionale veränderbare Arrays wie Datenstrukturen
- 12. Wie multidimensionale Arrays auf Gleichheit zu vergleichen?
- 13. Wie multidimensionale Arrays zu bestellen ist PHP
- 14. Sind C multidimensionale Arrays zusammenhängend ohne Löcher?
- 15. Wie zwei multidimensionale Arrays in PHP zusammenführen?
- 16. Indizierung mit booleschen Arrays in multidimensionale Arrays mit numpy
- 17. F # Multidimensionale Array-Typen
- 18. PHP - Multidimensionale Arrays können nicht in doppelten Anführungszeichen stehen
- 19. Javascript Multidimensionale Array-Probleme
- 20. C++: konstante multidimensionale Arrays in einem Zeiger speichern
- 21. Wie werden eindimensionale Arrays in multidimensionale umgewandelt? (C#)
- 22. Wie multidimensionale Arrays unter Beibehaltung der Schlüssel zusammengeführt werden?
- 23. Multidimensionale Plots
- 24. Ref-Parameter und Reflexion
- 25. Java Generics und Reflexion!
- 26. Statische Sprachen und Reflexion
- 27. Scala Aufzählung und Reflexion
- 28. Python-Reflexion und Typkonvertierung
- 29. Generische Konstruktoren und Reflexion
- 30. Scala: Reflexion und Fallklassen
Seit ich angefangen habe, mit C und Zeigern zu spielen, fand ich mehrere Dimensionen Arrays die falsche Antwort auf jede Programmierfrage. Die einzige Ausnahme könnte eine math-basierte Matrixmanipulation sein, aber alles mit so viel Mathe sollte wahrscheinlich als Daten behandelt werden und überhaupt nicht (in einer Mathematiksprache geschrieben). Ansonsten scheinen geschachtelte Strukturen, verschachtelte Arrays oder verschachtelte Pointer/Array-Kombinationen immer deutlicher zu lesen. Es könnte sicherlich sein, dass ich gerade nicht das richtige Problem gesehen habe. –