首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Java 入門必練:7 個經典小程序與初學心得總結

     編輯:Java 綜合教學

前言:代碼不停,早晚能行

初學 Java 最有效的方式是大量編寫小程序。本文整理 7 個經典練習,涵蓋循環、數組、字符串、算法基礎,並分享初學避坑心得。

練習 1:四位數反序之謎

題目:找出四位數 N,使得 9×N 等於 N 的反序數(如 1234→4321)

for (int n = 1000; n <= 9999; n++) {
    int ge = n % 10;
    int shi = n / 10 % 10;
    int bai = n / 100 % 10;
    int qian = n / 1000;
    int reversed = ge * 1000 + shi * 100 + bai * 10 + qian;
    if (reversed == n * 9) {
        System.out.println(n);  // 輸出:1089
    }
}

關鍵點:位運算分解數字、反序構建、邊界條件(1000-9999)。

練習 2:水仙花數

題目:三位數等於各位數字立方和(153 = 1³+5³+3³)

for (int i = 100; i < 1000; i++) {
    int g = i % 10;
    int s = i / 10 % 10;
    int b = i / 100;
    if (g*g*g + s*s*s + b*b*b == i) {
        System.out.print(i + "\t");  // 153 370 371 407
    }
}

練習 3:交替加減求和

題目:1 - 2 + 3 - 4 + ... + 99 - 100

int sum = 0;
for (int i = 1; i <= 100; i++) {
    sum += (i % 2 == 0) ? -i : i;
}
System.out.println(sum);  // -50

優化:數學公式 (1-2)+(3-4)+... = (-1)×50 = -50

練習 4:斐波那契分數求和

題目:2/1 + 3/2 + 5/3 + 8/5 + ... 前 20 項和

double x = 2.0, y = 1.0, sum = 0;
for (int i = 1; i <= 20; i++) {
    sum += x / y;
    double tmp = x;
    x = x + y;  // 下一項分子
    y = tmp;    // 下一項分母
}
System.out.println(sum);

規律:分子分母遞推:新分子=舊分子+舊分母,新分母=舊分子。

練習 5:九九乘法表

for (int i = 1; i <= 9; i++) {
    for (int j = 1; j <= i; j++) {  // 關鍵:j <= i,非 j <= 9
        System.out.print(j + "×" + i + "=" + (i*j) + "\t");
    }
    System.out.println();
}

常見錯誤:內層循環寫 j <= 9 會輸出矩形而非三角形。

練習 6:7 的倍數與含 7 數字之和

int sum = 0;
for (int i = 1; i <= 1000; i++) {
    if (i % 7 == 0 || 
        i % 10 == 7 ||           // 個位
        i / 10 % 10 == 7 ||      // 十位
        i / 100 == 7) {          // 百位
        sum += i;
    }
}
System.out.println(sum);

練習 7:閏年判斷與月天數

public static boolean isLeap(int year) {
    return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
public static int daysInMonth(int year, int month) {
    switch (month) {
        case 2: return isLeap(year) ? 29 : 28;
        case 4: case 6: case 9: case 11: return 30;
        default: return 31;
    }
}

初學心得與避坑指南

  1. 規律發現需練習:如斐波那契分數,初學者常卡在找規律,多做類題才能建立直覺
  2. 邊界條件要謹慎:循環範圍、數組下標、字符串索引是 Bug 高發區
  3. 變量命名要語義化:ge/shi/bai/qian 比 a/b/c/d 可讀性強得多
  4. 善用調試器:斷點觀察變量變化,比 System.out.println 高效得多
  5. 代碼簡潔勝過炫技:老師幾行代碼解決的問題,初學者常寫幾十行,差在經驗與庫函數掌握
  6. 每日練習 1-2 道:堅持兩週,語法、邏輯、調試能力質變

進階建議

  • 嘗試用遞歸重寫斐波那契、九九表
  • 學習單元測試(JUnit)驗證小程序正確性
  • 閱讀《Effective Java》第 1 章,建立良好編碼習慣

記住:熟能生巧,碼出未來。每一行代碼都在拉近你與資深開發者的距離。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved