JAVA第二次作业

(一)学习总结

1.学习使用Eclipse关联jdk源代码,查看String类的equals()方法,截图,并学习其实现方法。举例说明equals方法和==的区别。
关联JDK源代码:

equals 方法
将此字符串与指定的对象比较。当且仅当该参数不为 null,并且是与此对象表示相同字符序列的 String 对象时,结果才为 true。

区别:
equals方法是用来比较两个对象的引用是否相等,即是否指向同一个对象。
==是用来比较值是否相等。

equals方法的使用

public class equals {
  public static void main(String[] args) {
    String str1 = "hello";
    String str2 = "hello";
    String str3 = "hi";
    boolean a = str2.equals(str1);
    boolean b = str2.equals(str3);
    System.out.println("str2 is equal to str1 = " + a);
    System.out.println("str2 is equal to str3 = " + b);        
 }
}

输出结果为:

==方法的使用

public class equal {
	public static void main(String[] args) {
		int n=3;
        int m=3;       
        System.out.println(n==m);
	}
}

输出结果为:

2.什么是构造方法?什么是构造方法的重载?下面的程序是否可以通过编译?为什么?

构造方法是一种特殊的方法名字必须与定义他的类名完全相同,没有返回类型,甚至连void也没有。
方法重载就是同一个方法名,不同的传参。

不可以通过编译,构造函数 Foo()未定义;
修改:
将Foo obj = new Foo(); 改为:
Foo obj = new Foo(0);

3.运行下列程序,结果是什么?查阅资料,分析为什么。
运行结果:

对于不需要任何精确计算的数字计算可直接使用float或double,但如果进行精确计算的结果,必须使用BigDecimal类。

修改:

import java.math.BigDecimal;
public class Test {
    public static void main(String args[]) { 
        double a = 0.1;
        double b = 0.1;
        double c = 0.1;
        if(add(add(a,b),c) == 0.3){
            System.out.println("等于0.3");
        }else {
            System.out.println("不等于0.3");
        }
    }    
    public static double add(double d1,double d2){
        BigDecimal b1=new BigDecimal(Double.toString(d1));
        BigDecimal b2=new BigDecimal(Double.toString(d2));
        return b1.add(b2).doubleValue();
    }
}

4.运行下列程序,结果是什么?分析原因,应如何修改

结果:

5.在一个10000次的循环中,需要进行字符串的连接操作,那么,应该使用String类还是StringBuffer类,为什么?性能有差异吗?能否写出测试代码证明你的结论。(可查阅资料)

6.其他需要总结的内容

(二)实验总结

实验内容:
1.评分系统:一共10个评委,满分10分,假设有5个选手,分别由评委打分,去掉一个最高分和一个最低分后的平均分为该选手得分,将选手的得分从高到低进行输出。定义适当的方法。
2.Email验证:在各种应用中,需要对用户输入的email地址进行验证,编写一个方法,判断一个email地址是否有效。(判断条件:A:@和.同时存在 B: @在.之前 C: 不能@开头 D: 以com|cn|net|gov|edu|org结尾 )

(三)代码托管

代码上传:

码云链接:http://git.oschina.net/hebau_cs15/Java-CS02wcy/tree/master

posted @ 2017-03-28 11:11  烟火、木夏  阅读(166)  评论(1编辑  收藏  举报