我有一个问题......我的教授一直在跳舞。
" chooseCategory
方法适用于您的setCatNum
setter方法。在
setCatNum
setter方法应该如下:
public void setCatNum( ) {
catNum = chooseCategory( );
}
这与传统的setter方法有不同的外观
chooseCategory
应打印所有6个类别,然后使用费用说明
提示并返回类别编号。您需要使用扫描仪。"
这是否意味着他们希望我让对象调用chooseCategory
方法,然后使用chooseCategory
方法:
private void chooseCategory() {
//should print all 6 of your categories, then, using the expense description,
//prompt and return the category number. You will need to use Scanner.
System.out.println("Choose a category <number> for " + description);
for(int i =0; i<categories.length; i++){
System.out.println(i + " : " + categories[i]);
}
Scanner userInput = new Scanner(System.in);
int catUn = userInput.nextInt();
catNum = catUn;
System.out.println(catNum);
}
description
是顶部的私有字符串。
UML
费用
(+)Expense(catNum:int,desc:String,date:SimpleDateFormat,amt:double,repeat:boolean)
(+)Expense(desc:String,date:SimpleDateFormat,amt:double,repeat:boolean)
( - )chooseCategory():void
***我把 - 和+放在括号中,因为代码块认为它需要是一个子弹。
答案 0 :(得分:1)
说实话,我不知道你的教授想要你做什么,我想这里没有人能说出来。如果你想肯定的话,去问问他。
但是,让我建议一种改进代码的一般方法。你应该在这里使用返回值。
实施您的课程:
select
count(*)
/*,count(a.business_column)*/
from table_a a
inner join each table_b b
on b.key_column = a.business_column
稍后你可以使用这样的类(例如在你的public void setCatNum(int categoryNumber) {
catNum = categoryNumber;
}
private int chooseCategory() {
int userSelection = 0;
// Make user chose a category
// userSelection = ...
return userSelection;
}
方法中):
main()
在此创建YourClass yourObject = new YourClass();
yourObject.setCatNum(this.chooseCategory());
的新实例,并将 bind 创建为YourClass
变量。接下来,调用对象的方法(从内到外的嵌套调用)。首先,执行yourObject
。该方法包含一个本地chooseCategory()
变量来存储用户的选择(使用userSelection
读取)。最后,该方法将返回用户选择。然后将返回值传递给Scanner
,并在此处作为方法参数(称为setCatNum()
)。然后,您可以将categoryNumber
分配给categoryNumber
成员变量。
//编辑:现在你发布了你的UML:
catNum
答案 1 :(得分:0)
您没有在chooseCategory()
中返回值设置为catNum
。尝试这样的事情:
private int chooseCategory() {
//should print all 6 of your categories, then, using the expense description,
//prompt and return the category number. You will need to use Scanner.
System.out.println("Choose a category <number> for " + description);
for(int i =0; i<categories.length; i++){
System.out.println(i + " : " + categories[i]);
}
Scanner userInput = new Scanner(System.in);
int catUn = userInput.nextInt();
return catUn;
}