Je prends une classe Java débutante et je travaille au laboratoire Wallet.Méthode de transfert de portefeuille en Java
J'ai besoin de transférer le contenu du porte-monnaie d'un porte-monnaie (portefeuille de donateur) à l'extrémité d'un autre (portefeuille de récepteur).
Je crois que mes constructeurs ont été configurés correctement.
import.java.util.Arrays;
public class Wallet
{
private static final int MAX = 10; //Max possible # of banknotes in a wallet
// instance variables
private int contents[]; //array of banknotes
private int count; //number of banknotes stored in contents[]
/**
* Default constructor for objects of class Wallet
*/
public Wallet()
{
// initialize instance variables
contents = new int[MAX];
count = 0;
}
/**
* Overloaded constructor for objects of class Wallet
*/
public Wallet(int a[])
{
contents = new int[MAX];
for (int i = 0; i<a.length; i++)
{
contents=a;
if (contents[i] > 0)
count++;
}
}
mais besoin d'aide pour vérifier si la méthode add ci-dessous() je l'ai écrit est correct:
public void add(int banknote)//Not sure if this is right
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i<contents.length; i++)
sb.append(contents[i] + ", ");
sb.append(banknote);
count++;
}
ou devrait-il être:
contents[count] = banknote;
count++;
Je dois aussi transférer le contenu de un portefeuille de donneur à un portefeuille de récepteur, vider le portefeuille de donateur et en ajoutant au récepteur, j'ai écrit le code ci-dessous, mais il semble éteint et ne fonctionne pas correctement:
public void transfer(Wallet donor)
{
for(int i = 0; i < count; i++)
{
add(donor.contents[i]);
count++;
}
donor.count=0;
}
aucune indication sur l'endroit où je pourrais être obtenir ce mal, à été pendant des heures de
'contenu [contents.length] = note;' toujours jeter une erreur d'index! – schwobaseggl
En effet. Je recommanderais qu'il utilise la liste alors, cela simplifierait sa vie beaucoup plus. – Sneling
@schwobaseggl J'ai édité le code en conséquence, en montrant comment cela réduira drastiquement la quantité de travail qu'il doit faire. Cependant, votre réponse est toujours là s'il veut persister avec le tableau. – Sneling