Java黑皮书课后题第8章:**8.4(计算每个雇员每周工作的小时数)假定所有雇员每周工作的小时数存储在一个二维数组中。1行包含7列,记录了一个雇员7天的工作小时数。编写一个程序,按照总工时降序显示
生活随笔
收集整理的這篇文章主要介紹了
Java黑皮书课后题第8章:**8.4(计算每个雇员每周工作的小时数)假定所有雇员每周工作的小时数存储在一个二维数组中。1行包含7列,记录了一个雇员7天的工作小时数。编写一个程序,按照总工时降序显示
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
**8.4(計算每個雇員每周工作的小時數)假定所有雇員每周工作的小時數存儲在一個二維數組中。1行包含7列,記錄了一個雇員7天的工作小時數。編寫一個程序,按照總工時降序顯示
- 題目
- 題目描述
- 破題
- 代碼
- 運行實例
題目
題目描述
**8.4(計算每個雇員每周工作的小時數)假定所有雇員每周工作的小時數存儲在一個二維數組中。1行包含7列,記錄了一個雇員7天的工作小時數。例如,下面數組存儲了8個雇員的工作小時數。編寫一個程序,按照總工時降序顯示雇員和他們的總工時
破題
代碼
import java.util.Arrays;public class Test8_4 {public static void main(String[] args) {//1. 新建一個8*7的二維數組,賦值int[][] emplayees_workhours = {{2, 4, 3, 4, 5, 8, 8},{7, 3, 4, 3, 3, 4, 4},{3, 3, 4, 3, 3, 2, 2},{9, 3, 4, 7, 3, 4, 1},{3, 5, 4, 3, 6, 3, 8},{3, 4, 4, 6, 3, 4, 4},{3, 7, 4, 8, 3, 8, 4},{6, 3, 5, 9, 2, 7, 9},};int raw = emplayees_workhours.length;int col = emplayees_workhours[0].length;//2. 再新建一個長度為8的一維數組,存儲每位員工工作小時數int[] emplayee_workhours_sum = new int[raw];//3. 創建一個int型對象存儲工作小時數加和,賦初始值為0int sum = 0;//4. 雙層循環語句遍歷二維數組,行下標從0開始7結束 列下標從0開始6結束for (int a = 0 ; a < raw ; a++){//5. 循環體內(第一層內):賦第三步創建的存儲加和對象值為0sum = 0;for (int b = 0 ; b < col ; b++){//6. 循環體內(第二層內):對每行元素進行加和sum += emplayees_workhours[a][b];}//7. 循環體內(第一層內):將加和賦值給一維數組emplayee_workhours_sum[a] = sum;}//8. 新建另一個一維數組,長度等于第二步創建的一維數組int[] copy = new int[raw];//9. 原一維數組復制給新創建的一維數組System.arraycopy(emplayee_workhours_sum, 0 , copy, 0, raw);//10. 對新一維數組進行排序Arrays.sort(copy);//11. 遍歷新一維數組元素,匹配到則輸出雇員編號(原數組下標)和元素值,輸出后則將元素值置0for (int a = copy.length - 1 ; a >= 0 ; a--){//與原有一維數組進行匹配for (int b = 0 ; b < emplayee_workhours_sum.length ; b++){if (copy[a] == emplayee_workhours_sum[b]){System.out.println("Employee " + b + " 一周工作" + copy[a] + "小時");emplayee_workhours_sum[b] = 0;}}}} }運行實例
Employee 7 一周工作41小時 Employee 6 一周工作37小時 Employee 0 一周工作34小時 Employee 4 一周工作32小時 Employee 3 一周工作31小時 Employee 1 一周工作28小時 Employee 5 一周工作28小時 Employee 2 一周工作20小時總結
以上是生活随笔為你收集整理的Java黑皮书课后题第8章:**8.4(计算每个雇员每周工作的小时数)假定所有雇员每周工作的小时数存储在一个二维数组中。1行包含7列,记录了一个雇员7天的工作小时数。编写一个程序,按照总工时降序显示的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java黑皮书课后题第8章:*8.3(按
- 下一篇: Java黑皮书课后题第8章:*8.5(代