第二次作业#

1.实验内容

==:用于数值的比较,比较的是两个字符串的地址值;

equals()方法:用于内容的比较,比较两个字符串内容是否相等。

例如:

2.程序分析

1.构造方法

(1).构造方法的名字必须与定义他的类名完全相同,没有返回类型,甚至连void也没有。
(2).构造方法的调用是在创建一个对象时使用new操作进行的。构造方法的作用是初始化对象。

(3).不能被static、final、synchronized、abstract和native修饰。构造方法不能被子类继承。
class RectConstructor{
double length;
double width;
double area(){
return length*width;
}

2.构造方法的重载

构造函数的作用就是实例化一个对象。 当你new 了一个对象,会调用它的构造函数。
构造函数重载就是可以写多个构造函数,参数类型、个数不同。和普通函数重载是一样的。
class Person{
private String id;
private String name;
public Person(){
//default
}
public Person(String id, String name){
this.id=id;
this.name=name;
//default
}
}

3.

这个程序不能通过编译。因为构造方法需要在类的内部定义并实现,这个程序实在类的外部定义的。

3.程序分析##

结果为:

因为因为它的精度已经损失了,为了处理精度损失的问题,可以使用java.math.BigDecimal类。改后的程序如下:

4.程序分析##

结果为:

5.分析##

String类的对象中,字符串常量是不可修改的字符串;
StringBuffer类的对象中,字符串变量是可修改的字符串。
在操作字符串时,如果该字符串仅用于表示数据类型,则使用String类型,如果需要对字符串进行增删操作,则使用StringBuffer类。

6.学习心得##

1.程序设计思路:先让用户输入十位评委分别为五位选手的评分,然后将这些数据存放到一个二维数组中,再每行比较求出每行的最大值、最小值与平均值。最后将平均值进行排序,输出即可。
遇到的问题:如何将数据存放到二维数组中,并如何引用。
解决的方法:按照书上讲解的Scannner的输入以及二维数组的输出,进行尝试,直到成功解决问题。
2.程序设计思路:让用户输入一个邮箱地址,然后将该邮箱输入,以方便验证。首先验证@和.是否同时存在,正确的邮箱缺一不可,其次,@与.的位置,@需要在.之前;最后是否是以com、cn等字符结尾。完全符合的输出 your id-card number is ture!!,缺一即为 your id-card number is error!!
遇到的问题:@和.是否同时存在的问题、怎么判断@与.位置的问题、以及结尾的问题。
解决的方法:indexof()方法是验证@与.是否存在的;startswith()方法是验证是否以指定字符串开头;endswith()方法是判断是否以指定字符结尾。

码云截图与网址##

截图:

网址:
https://git.oschina.net/hebau_cs15/hebau-cs01jhr.git