iT邦幫忙

2026 iThome 鐵人賽

DAY 10
0

本日學習:

  1. 多維陣列:
    • 前述:(宣告)int[][][] arr = new int[2][4][3];
    • 三維陣列:x 軸向前、y 軸向下、z 軸向右
    • 每多一維,就要多一層迴圈
    • 如何在三維陣列裡找最大值:
import java.util.Scanner;
public class CH10_1{
    public static void main(String[] args){
        int[][][] a = new int[4][4][4];
        Scanner sc = new Scanner(System.in);
        for(int i = 0; i < 4; i++){
            for(int j = 0; j <= i; j++){
                for(int k = 0; k <= j; k++){
                    a[i][j][k] = sc.nextInt();
                }
            }
        }
        int max = a[0][0][0];
        for(int i = 0; i < 4; i++){
            for(int j = 0; j <= i; j++){
                for(int k = 0; k <= j; k++){
                    if(a[i][j][k] > max)
                        max = a[i][j][k];
                }
            }
        }
        System.out.println(max);
        sc.close();
    }
}
  • 屬於非原始資料型別
  • 若以「==」比較兩陣列 a and b,是在比較兩者是否指向同一陣列,不是比較內容
  • 補充:%b 為輸出 boolean 值(true or false)
  1. 函數( method ):
    • 打包經常使用的程式片段,供日後使用,例如:printf()、main()
    • 定義函數的語法:
      public static 傳回執行型別 函數名稱(型別 引數,...){
      程式敘述;
      return 傳回值;
      }
    • 如果不需要引數,可只寫()
    • 如果沒有傳回值,return 可省略
    • 函數要放在 class 裡
    • public static:固定用法,將該函數視為全域函數,讓類別中的函數可被其他程式碼存取
      public:讓函數可以在其他類別中被呼叫
      static:不建立物件的情況下使函數被呼叫
    • 簡單的例子:印 18 次星號,印出「Wonderful tonight!」後再印 18 次星號
public class CH10_2 {
    public static void main(String[] args){
        star(); // Call the star method to print a line of stars
        System.out.print(" Wonderful tonight! ");
        star();
    }
    public static void star(){
        for(int i = 0; i < 18; i++)
            System.out.print("*");
    }
}
  • 因為 main() 有加 static,所以 star() 前面也要加

本日結語:

  1. 理解多維陣列的原理
  2. 理解沒有傳回值的函數

上一篇
Day 9:程式流程控制練習與陣列(3)
系列文
從零開始學程式語言:Java 新手修煉記10
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言