又是我。这次我需要获取用户输入,将它们插入各种设置方法,并输出一个值。这听起来很简单,尽管作业说明让它看起来更难。
深度: 我需要在 main() 中声明 4 个“Lease”对象,然后三次调用“getData”方法。然后我需要为 main() 中的每个字段返回一个值。所以至少对我来说,显而易见的下一步是用输入初始化字段。 但是。 我不认为这是可能的(假设代码):
Lease ls = new Lease();
Scanner input = new Scanner(System.in);
String name = input.nextLine();
ls.setName(name);
//or
ls.setName(input.nextLine());
//or
ls.setName() = input.nextLine;
我认为这些都行不通,至少我在那里使用它们的方式行不通。所以这里需要更实际的思考方式
对于上下文,这是我的两个程序:
class Lease {
public static void main(String args[]){
}
private String name;
private int aptNumber;
private double rent;
private int term;
private static final int FEE = 10;
public Lease() {
name = "XXX";
aptNumber = 0;
rent = 1000.0;
term = 12;
}
public void setName(String tenant) {
name = tenant;
}
public void setAptNumber(int apt) {
aptNumber = apt;
}
public void setRent(double monthRent) {
rent = monthRent;
}
public void setTerm(int t) {
term = t;
}
public String getName() {
return name;
}
public int getAptNumber() {
return aptNumber;
}
public double getRent() {
return rent;
}
public int getTerm() {
return term;
}
public void addPetFee() {
rent = rent + 10;
explainPetPolicy();
}
public static void explainPetPolicy() {
String policy = "A pet fee of $10 is added to the monthly rent.";
}
}
import java.util.Scanner;
class TestLease
{
public static void main (String args[])
{
// Write your code here
Lease ls = new Lease();
ls.setName(tenant);
ls.setAptNumber(apt);
ls.setRent(monthRent);
ls.setTerm(t);
}
public static void showValues(Lease ls)
{
System.out.println("\n\nYour lease results:" +
"\nName : " + ls.getName() +
"\nApartment : " + ls.getAptNumber() +
"\nRent : " + ls.getRent() +
"\nTerm : " + ls.getTerm());
}
public static Lease getData(String tenant, int apt, double monthRent, int t)
{
// Write your code here
Scanner input = new Scanner(System.in);
System.out.print("Enter lessee name >> ");
tenant = input.nextLine();
System.out.print("Enter apartment number >> ");
apt = input.nextInt();
System.out.print("Enter rent >> ");
monthRent = input.nextDouble();
System.out.print("Enter lease term in months>> ");
t = input.nextInt();
}
}
这就是我目前拥有的。我不确定从这里开始做什么,或者即使我到目前为止所知道的是正确的。我觉得我缺少 getData() 的返回语句,当然,编译它会给我“找不到符号”错误。
即使是像
return tenant;
这样的东西,除了犯更多的错误之外,也没什么用。我将不胜感激任何帮助,即使只是建议