Java核心语法:从变量到流程控制

Java 核心语法:从变量到流程控制
(专为 0~1 基础学习者打造,2026 年最实用、最清晰的入门版)

下面内容按实际学习顺序组织,从最基础的概念开始,一步步带你建立完整的“语法骨架”。建议边看边在 IDE(推荐 IntelliJ IDEA Community 或 VS Code + Extension)里敲代码验证。

1. 第一个程序:Hello World 与 main 方法

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World! 2026");
    }
}

必须记住的几句话

  • 类名与文件名必须完全一致(区分大小写)
  • public static void main(String[] args) 是程序入口
  • System.out.println() 是最常用的输出方式(自动换行)
  • System.out.print() 不换行

2. 变量与数据类型(最核心的基础)

Java 是强类型、静态类型语言,变量必须先声明类型。

类型分类关键字占用字节默认值取值范围示例备注
整型byte10-128 ~ 127极少单独使用
short20-32768 ~ 32767
int(最常用)40-2^31 ~ 2^31-1 ≈ ±21亿默认整数类型
long80L-2^63 ~ 2^63-1字面量要加 L 或 l
浮点型float40.0f±3.4E38(有效6~7位)字面量要加 f 或 F
double(最常用)80.0±1.8E308(有效15~16位)默认小数类型
字符型char20 ~ 65535(Unicode)单引号,只能一个字符
布尔型boolean~1 bitfalsetrue / false不能转成 0/1
引用类型String(最常用)null字符串,属于类(不是基本类型)
数组、自定义类等null所有非基本类型都是引用类型

常见写法对比(2026 年最推荐风格)

int age = 25;
long population = 1_400_000_000L;     // 下划线分隔增强可读性(Java 7+)
double price = 19.99;
float pi = 3.14159f;
char gender = '男';
boolean isVip = true;
String name = "重阳";

3. 变量的作用域与生命周期

位置名称作用域生命周期默认值
方法内部局部变量从声明到 } 结束方法调用期间无(必须初始化)
类中、方法外成员变量(字段)整个类对象存在期间有默认值
用 static 修饰静态变量(类变量)整个类类加载 ~ 卸载有默认值
public class ScopeDemo {
    static int classVar = 100;      // 静态变量
    int instanceVar = 200;          // 成员变量(实例变量)

    public void method() {
        int localVar = 300;         // 局部变量,必须初始化
        System.out.println(classVar + instanceVar + localVar);
    }
}

4. 类型转换(自动 & 强制)

自动转换(从小 → 大):byte → short → int → long → float → double

int a = 10;
double b = a;          // 自动,10.0

强制转换(可能丢失精度)

double pi = 3.14159;
int n = (int) pi;      // 3(直接截断,不是四舍五入)

特别注意

byte b1 = 10;
byte b2 = 20;
// byte b3 = b1 + b2;   // 错!int + int = int
byte b3 = (byte)(b1 + b2);  // 正确,但可能溢出

5. 运算符(优先级口诀:先乘除后加减,括号最高)

类别符号说明注意点
算术+ – * / %取模(余数)整数 / 整数 = 整数
自增/自减++ —前置/后置区别a++ 先用后加,++a 先加后用
赋值= += -= *= /= %=复合赋值a += 5 等价 a = a + 5
关系> >= < <= == !=结果一定是 boolean== 比较值(引用类型比地址)
逻辑&& || !短路与、短路或、非&& 和 || 有短路特性
三元条件 ? 表达式1 : 表达式2简洁 if-else最常用替代简单分支
位运算& | ^ ~ << >> >>>位与、或、异或、取反、移位性能优化、权限控制常用

经典面试题

int x = 5;
int y = x++ + ++x;   // 5 + 7 = 12,x 最后是7

6. 流程控制(三大结构)

6.1 顺序结构(默认)

6.2 选择结构

if-else

if (age >= 18) {
    System.out.println("成年人");
} else if (age >= 13) {
    System.out.println("青少年");
} else {
    System.out.println("儿童");
}

三元运算符(简洁版 if-else)

String status = (score >= 60) ? "及格" : "不及格";

switch(Java 17+ 增强版)

String grade = "A";
switch (grade) {
    case "A" -> System.out.println("优秀");
    case "B" -> System.out.println("良好");
    case "C", "D" -> System.out.println("及格");   // Java 14+ 支持多个 case
    default -> System.out.println("不及格");
}

6.3 循环结构(三种)

for(最常用,适合已知次数)

for (int i = 1; i <= 100; i++) {
    System.out.println(i);
}

// 增强 for(遍历数组/集合)
int[] scores = {85, 92, 78};
for (int score : scores) {
    System.out.println(score);
}

while(适合未知次数)

int count = 0;
while (count < 5) {
    System.out.println("第 " + (++count) + " 次");
}

do-while(至少执行一次)

int input;
do {
    System.out.print("请输入正整数(输入0结束):");
    input = scanner.nextInt();
} while (input != 0);

break & continue & 带标签的用法

outer: for (int i = 1; i <= 5; i++) {
    for (int j = 1; j <= 5; j++) {
        if (j == 3) continue outer;  // 跳出双重循环
        System.out.println(i + "," + j);
    }
}

快速自测清单(建议全部敲一遍)

  1. 声明各种基本类型变量并输出
  2. 用三元运算符判断成绩等级(90+优秀,80+良好,60+及格,其余不及格)
  3. 用 for 打印 1~100 内所有 3 的倍数
  4. 用 while 实现猜数字游戏(1~100)
  5. 用 switch 处理菜单选择(1.登录 2.注册 3.退出)
  6. 写一个计算 1+2+…+100 的程序(三种循环各写一次)

这些敲完后,你就真正掌握了 Java 最核心的“语法骨架”。

想继续深入哪个部分?

  • 数组 & 集合初步
  • 方法(函数)的定义与调用
  • 调试技巧(断点、单步)
  • Scanner 键盘输入完整用法
  • 还是直接进入面向对象(类与对象)?

告诉我你的下一步目标~

文章已创建 4323

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部