초보자 용 Java 클래스입니다. 이 실습실에서는 월렛을 나타내는 배열을 조작하는 클래스 인 '월렛'을 만듭니다. 월렛에는 지폐를 표시하는 정수를 저장하는 "내용 []"배열이 있습니다. 변수 "count"는 지갑의 지폐 수를 유지합니다. 월렛을 초기화하고 통화/업데이트 '개수'를 추가하는 메소드 (serpate Driver 클래스에서 제공된 메소드 호출과 일치하는 메소드)를 작성한 후에는 하나의 인스턴스화 된 월렛 배열을 다른 클래스로 전송해야합니다. 하나의 Wallet 클래스가 "myWallet"이라는 지갑을 망칠 뿐이므로 이제는 "yourWallet"이라는 새 Wallet을 가져 와서 "myWallet"의 배열 값으로 채워야하기 때문에 어떻게 작동하는지 모르겠습니다. 는 // 나는 자바 API 라이브러리를 사용하는이 코스에서 허용되지 않습니다해야배열 매개 변수 전달
내 지갑 클래스는 지금까지 다음과 같습니다
public class Wallet
{
// max possible # of banknotes in a wallet
private static final int MAX = 10;
private int contents[];
private int count; // count # of banknotes stored in contents[]
public Wallet()
{
contents = new int[MAX];
count = 0;
}
/** Adds a banknote to the end of a wallet. */
public void addBanknote(int banknoteType)
{
contents[count] = banknoteType;
count = count + 1;
}
/**
* Transfers the contents of one wallet to the end of another. Empties the donor wallet.
*/
public void transfer(Wallet donor)
{
//my code belongs here
}
...
드라이버 코드 외모 이 같은 :
public class Driver
{
public static void main(String args[])
{
Wallet myWallet = new Wallet();
myWallet.addBanknote(5);
myWallet.addBanknote(50);
myWallet.addBanknote(10);
myWallet.addBanknote(5);
System.out.println("myWallet contains: " + myWallet.toString());
// transfer all the banknotes from myWallet to yourWallet
Wallet yourWallet = new Wallet();
yourWallet.addBanknote(1);
yourWallet.transfer(myWallet);
System.out.println("\nnow myWallet contains: "
+ myWallet.toString());
System.out.println("yourWallet contains: "
+ yourWallet.toString());
나는이에 도움이 addBanknote()를 사용하려면,하지만 난 yourWallet에 myWallet 모두를 전송하는 전송() 메소드를 이야기하는 방법을 모른다 . myWallet 내용에 대한 전을 높이기 위해 탐색과
yourWallet.addBanknote(myWallet.contents[i]);
:
나는 이전에 같은 somethign 할 수있는 아이디어를()했다. 그것은 끔찍하게 틀린 것처럼 보이지만, 나는이 방법을 쓰는 데 완전한 손실이 있습니다. 내 문제가 너무 명확하지 않아 아무도 도움을받을 수 없다면 더 나은 질문을하는 방법이나 올바른 용어로 검색하는 방법에 대한 조언을받는 것이 행복 할 것입니다. 제공 할 수있는 도움에 감사드립니다.
_transfer (지갑 기증자) _는 '기증자의 모든 메모를 저에게 전 해주세요'를 의미합니다. _tranfer (Waller 기부자, int bankNoteType) _는 '기증자에게서 주어진 유형의 단일 노트를 나에게 전송'을 의미합니다. 개인적으로 나는 _transferTo (Waller 수신기) _를 선택했을 것입니다. 돈을주는 것보다 API에서 더 자연 스럽다고 느낍니다. :) – extraneon
@extraneon 나는 이것이 OP에 대한 좋은 질문이며 걱정거리라고 생각합니다. 나는 어떤 종류의 템플릿을 받았고 그것을 채워야 만한다는 가정하에 (아마도 잘못되었다) 은행 노트는 단지 은행 노트의 가치이기 때문에'bankNoteType'에 대한 당신의 관점을 보지 못했다. '오해'). 따라서 내용은 다음과 같습니다 :'[1, 5, 20, 20, 100]'. – mangoDrunk
@mangoDrunk 마지막 줄에서 '#'은 무엇을합니까? 누락 된 메서드가있는 템플릿 Wallet과 해당 배열이 int 값일뿐입니다. 또한, extraneon 메서드 호출에 대해 설명해 주셔서 감사합니다! 내 문제의 가장 불분명 한 부분 중 하나였습니다. 그게 뭐야? 메서드 매개 변수 또는 더 나은 이름이 있습니까? – DiscipleApollos