使用字符串 - Public int length()

时间:2014-02-06 11:29:14

标签: java bluej string-length variable-length

我对编程很陌生,而且我很难理解我的作业,以及我如何继续解决它。

通过以下方式介绍赋值:String类定义了一个带有以下标题的长度访问器方法: public int length() 所以下面是一个使用String变量fullName的例子; fullName.length()

然后,如果fullName参数的长度小于4个字符或studentId参数的长度小于3个字符,则赋值我会向Student的构造函数添加条件语句以打印错误消息。但是,即使打印了错误消息,构造函数仍应使用这些参数来设置名称和id字段。

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

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

你们可以引导我,或者只是给我一些关于如何开始这个的提示? 值得一提的是,这是用BlueJ编码的,它使用的是“LabClass”项目的一个例子。

2 个答案:

答案 0 :(得分: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”构造。 “如果”允许您仅在满足某些条件时执行某些代码块。条件可以是任何表达式,但必须将其计算为“true”或“false”(它必须是布尔值)。 “如果”构造看起来像这样:

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。我相信您应该能够修改原始源以检查字符串长度。

关于这个分配---在这种情况下你不需要构造其他东西,但要完整:你可以结合“if”使用它来执行某些代码,条件是不是见过,像这样:

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

希望这有帮助。

答案 1 :(得分:0)

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

你也担心陷入一些你不理解的事情。一开始没有人理解这些事情,因为总有比任何一个人都知道的更多的东西,所有程序员都必须处理一定程度的混乱。你必须相信,如果你坐下来开始工作,那么混乱就会明白。学习一门新语言的最好方法就是说出来,而编程的优点是计算机对你的错误有无限的耐心。