Sowas wie memcpy in Java?
-
Hallo Javaianer,
ich muss an vielen Stellen in meinem Programm ganze int-Arrays und auch andere Arrays kopieren. Gibt es dafür in Java eine vordefinierte Funktion also so wie memcpy in C oder muss ich mir selbst eine schreiben?Thx, Mastah
-
System.arraycopy
-
Dank dir !
Noch ne Frage: Was ist hier krumm?
//... // int[][] inhalt ist Eingangsparameter m_inhalt = new Vektor[inhalt.length]; // In der Schleife crasht es komischerweise... for(int i = 0; i < inhalt.length; ++i) m_inhalt[i].setContent(inhalt[i]); //... // setContent von Vektor (sollte kein Problem machen) public void setContent(int[] inhalt) { m_inhalt = new int[inhalt.length]; System.arraycopy(inhalt, 0, m_inhalt, 0, inhalt.length); }
Der schmeisst immer:
Exception in thread "main" java.lang.NullPointerException
-
MaSTaH schrieb:
// int[][] inhalt ist Eingangsparameter m_inhalt = new Vektor[inhalt.length]; // In der Schleife crasht es komischerweise... for(int i = 0; i < inhalt.length; ++i) m_inhalt[i].setContent(inhalt[i]);
m_inhalt[i] == null, jedenfalls seh ich nirgends ein Initialisierung dafür.
-
Habs jetzt so:
m_content = new Vektor[content.length]; for(int i = 0; i < content.length; ++i) { m_content[i] = new Vektor(); m_content[i].setContent(content[i]); }
Jetzt kommt:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
Warum, ich schreib doch nirgendwo drüber.
-
Hab mal nachgeguckt. content.length ist 2. Den Bereich überschreite ich ja nicht mit der Schleife. Woran kann das sonst liegen?
-
Sorry, blöder Fehler meinerseits. Alles erledigt.