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
設計

相關文章
相關標籤/搜索