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

Java 變量賦值與常量定義:final 關鍵字、輸入交互與友好提示實戰

     編輯:Java 綜合教學

Java 變量賦值與常量定義:從基礎語法到交互優化

一、變量聲明、賦值與類型推斷

// 1. 聲明並初始化
int amount = 100;
int price = 0;

// 2. 後續賦值(覆蓋原值)
price = 23;        // 直接賦值
amount = 200;      // 重新賦值

// 3. 表達式賦值
int change = amount - price; // 運算結果賦值

// 4. 連續賦值
int a = 1, b = 2, c = 3;
int x = y = z = 10; // 右結合:z=10 → y=10 → x=10

二、final 定義常量:不可變引用/值

  • 基本類型:值不可變。
  • 引用類型:引用地址不可變,指向對象內容可變。
  • 編譯期常量(基本類型 + String + final + 字面量初始化)會進入常量池,調用處直接內聯替換。

三、Scanner 交互式輸入與友好提示

Scanner in = new Scanner(System.in);
System.out.print("請輸入票面金額:"); // print 不換行,光標停留行尾
int amount = in.nextInt();
System.out.print("請輸入購買金額:");
int price = in.nextInt();
System.out.println("找零:" + (amount - price) + " 元");
in.close();

關鍵點:

  • System.out.print vs println:前者無換行,適合提示語;後者換行,適合結果輸出。
  • nextInt() 只讀數字,**不消費換行符**;後續若用 nextLine() 必須先調用一次 nextLine() 吃掉殘留換行。
  • 輸入校驗:if (in.hasNextInt()) { ... } else { System.err.println("請輸入整數!"); in.next(); }

四、常見錯誤與調試技巧

錯誤代碼現象原因修正
int a; System.out.println(a);編譯錯誤局部變量未初始化聲明時賦默認值:int a = 0;
final int b; b = 10; b = 20;編譯錯誤final 變量只能賦值一次去掉 final 或只賦值一次
Scanner in = new Scanner(System.in); in.nextInt(); in.nextLine();讀到空字符串nextInt 留下換行符中間加 in.nextLine(); 消費換行
String s = "a" + 1 + 2;s="a12"左到右字符串連接用括號:"a" + (1+2) → "a3"

五、最佳實踐清單

  1. 變量名見名知意:userAge 而非 a。
  2. 盡量用 final 修飾不變量,利於編譯器優化與代碼可讀性。
  3. 輸入處理統一封裝工具類,集成校驗、重試、默認值邏輯。
  4. 金額計算**嚴禁用 float/double**,必須用 BigDecimal 或「分為單位的 long」避免浮點誤差。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved