java第二次做业

(一)学习总结

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

equals()方法

equals()方法是比较两个字符串内容是否相等,==是比较的是两个字符串的地址。git

2.什么是构造方法?什么是构造方法的重载?下面的程序是否能够经过编译?为何?

构造方法是:方法的名字与定义的类名应彻底相同,在建立对象时对其进行初始化,能够在主方法中直接调用。
构造方法的重载:方法的重载须要方法的名称相同,参数的类型和参数的个数不一样,经过传递参数的个数及类型不一样以完成不一样功能的方法调用。

public class Test {
public static void main(String args[]) {
Foo obj = new Foo();
}
}
class Foo{
int value;
public Foo(int intValue){
value = intValue;
}
}
不能经过编译。由于里面的构造函数Foo()没有定义。数组

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


public class Test {
public static void main(String args[]) {
double a = 0.1;
double b = 0.1;
double c = 0.1;
if((a + b + c) == 0.3){
System.out.println("等于0.3");
}else {
System.out.println("不等于0.3");
}
}
}
运行结果为:不等于0.3
double是浮点型的,不能用二进制精度表示,超出精度范围,结果不许确。
可改成eclipse

4运行下列程序,结果是什么?分析缘由,应如何修改。


没有进行实例化。函数

public class Test {
    public static void main(String[] args) {
    MyClass[] arr=new MyClass[3];
    arr[1].value=100;
    }
}
class MyClass{
    public int value=1;
    }

可改成学习

public class Test {
public static void main(String[] args) {
    MyClass arr=new MyClass();
    arr.value=100;
    }
}
class MyClass{
    public int value=1;
    }

(二)实验总结

1.评分系统:一共10个评委,满分10分,假设有5个选手,分别由评委打分,去掉一个最高分和一个最低分后的平均分为该选手得分,将选手的得分从高到低进行输出。定义适当的方法。

程序设计思路:
一共有五个选手十个评委,先定义数组来存放评委给的分数,而后找出最大值最小值,把这两个地址设为0,去掉了最大值和最小值,求和,求平均值。
问题1:
一开始写完了没有错误提示,但就是不能运行。
缘由:
后来发现是大小写问题,String S应该大写。

问题2:
只能输入一个选手的成绩,提示语句太少,不方便判断。
缘由:只用简单的循环判断出了一个选手的平均成绩,加了一个大循环,输入五次才能输出每一个选手的平均成绩。
.net

(三)代码托管

连接:https://git.oschina.net/hebau_cs15/Java-CS02lc.git
设计

相关文章
相关标签/搜索