0

我对编程完全陌生,我很难理解我的任务,以及我如何着手解决它。

赋值是这样介绍的: String 类定义了一个长度访问器方法,头文件如下:public int length() 所以下面是它与 String 变量 fullName 一起使用的例子;全名.length()

然后,如果 fullName 参数的长度小于四个字符或 studentId 参数的长度小于三个字符,作业然后要求我向 Student 的构造函数添加条件语句以打印错误消息。但是,即使打印了错误消息,构造函数仍应使用这些参数来设置 name 和 id 字段。

该作业还建议使用 if 和 else 方法。

到目前为止,我已经阅读了所有内容,但我根本不明白我是如何进行的——但是,我确实了解它应该发挥什么作用。

你们能不能给我指路,或者只是给我一些关于我如何开始的提示?值得注意的是,这是用 BlueJ 编码的,它使用了“LabClass”项目的示例。

4

2 回答 2

1

让我们首先初始化您的学生类的对象,将错误检查放在一边。正如您所说,无论如何您都必须设置这两个字段(fullName 和 studentId)。这就是我们将拥有的:

public class Student {

    private String studentId;
    private String fullName;

    public Student(String studentId, String fullName) {
        this.studentId = studentId;
        this.fullName = fullName;
    }

    public static void main(String[] args) {
        Student s = new Student("12", "John Doe");
    }
}

上面的代码首先可以满足您的需求。我希望你明白那里发生了什么?如果没有,那就问吧。

好的,我们现在需要的是添加这个“长度检查”。关键是理解“if”结构。“如果”允许您仅在满足特定条件时执行某些代码块。条件可以是任何表达式,但它必须被评估为“真”或“假”(它需要是布尔值)。“如果”构造如下所示:

if (expression) {
    System.out.println("Expression was true!");
}

你可以用你的条件来代替“表达”,如果它是真的,代码将被执行。看到这个:

if (3 > 2) {
    System.out.println("Three is greater than two");
}

好吧,我们可以使用这些知识来执行我们的长度测试:

if (fullName.length() < 4) {
    System.err.println("Name '" + fullName + "' is too short");
}

使用相同的构造(但条件不同)来测试 studentId。我相信您应该能够修改原始来源以检查字符串长度。

至于这个赋值——在这种情况下你不需要 else 构造,但要完整:你可以将它与“if”结合使用,在不满足条件时执行某些代码,如下所示:

if (fullName.length() < 4) {
    System.err.println("Too short!");
}
else {
    System.out.println("OK");
}

希望这可以帮助。

于 2014-02-06T11:50:46.313 回答
0

我想说你能做的最好的事情就是开始编码,看看会发生什么。你提到你担心你会毁了一些东西。你不能因为犯错而破坏任何东西,事实上,犯错是我们所有人学会这样做的方式。尝试一些东西,如果它不起作用,计算机会告诉你它出了什么问题。有时计算机告诉你的东西没有多大意义,但它至少会给你一个起点。您和计算机之间的对话是您如何了解哪些有效,哪些无效。

你也担心被困在你不理解的东西上。没有人一开始就理解这些东西,而且由于要学习的东西总是比任何人可能知道的要多,所有的程序员都必须处理一定程度的困惑。你必须相信,如果你坐下来开始工作,困惑就会消失。学习一门新语言最好的方法就是说它,而编程的好处是计算机对你的错误有无限的耐心。

于 2014-02-06T12:59:37.707 回答