2016-11-01 2 views
2

Ich sehe überall und kann keine Antwort oder einen Hinweis auf mein Problem finden. Ich bin mir sicher, dass es wahrscheinlich etwas damit zu tun hat, dass Arrays als Referenz übergeben werden und ich die Elemente möglicherweise kopieren und an meine Instanzvariable übergeben muss, aber ich kann es einfach nicht herausfinden.Array-Instanz-Variable muss in ctor() initialisiert werden, muss Array-Elemente haben a [] von Main übergeben

einfach Dinge einfach zu halten Wir erstellen Wallet-Klasse, die eine Brieftasche darstellt, die bis zu 10 Rechnungen halten kann. Wir werden ausdrücklich angewiesen, keine Array-Listen zu verwenden und mit Arrays zu arbeiten. Wallet hat zwei Instanzvariablen, aber die einzige, die ich Probleme auf das ist eine

private int contents[ ]; 

mein Haupt wird durch die folgenden Anrufe neue Wallet-Objekt erstellen

int a[ ] = {100, 50, 20, 1}; 

Wallet myWallet = new Wallet(a); 

in meinem Konstruktor, muss ich Zuweisen von Speicher für die Instanzvariable contents [] und dann Abrufen der Elemente von a [] und sie innerhalb des Inhaltsarrays enthalten.

public Wallet(int a [ ]) 

System.out.println("Constructor #2 called."); 

//allocate memory for contents[] 


contents = new int[MAX] //supposed to be of size 10, given info 



//initialize contents[] from a[] 

stecken hier, wie kann ich sie einander zuordnen?

Wie kopiere ich 100,50,20,1 zum Inhalt bei i = 0 - 3, und habe Reset von Elementen = 0?

Antwort

0

könnten Sie verwenden Arrays.copyOf(int[], int) und so etwas wie

public Wallet(int[] a) { 
    System.out.println("Constructor #2 called."); 
    this.contents = Arrays.copyOf(a, 10); 
} 
Verwandte Themen