Java 学习笔记 · 第一课:基础语法与核心概念

适合零基础入门,知识点密度适中,代码示例可直接运行。


  1. 什么是 Java?

Java 是一种面向对象的、跨平台的编程语言,由 Sun Microsystems(现 Oracle)于 1995 年发布。其核心设计理念是 "Write Once, Run Anywhere"(一次编写,到处运行)。

1.1 三大平台

平台 用途 Java SE(标准版) 桌面应用、基础库 Java EE(企业版) Web 应用、分布式系统 Java ME(微型版) 嵌入式设备(已较少使用)

1.2 运行机制

· 源代码(.java)→ 编译成字节码(.class)→ 由 JVM(Java 虚拟机) 解释执行。 · 不同操作系统安装对应的 JVM,但字节码相同,实现跨平台。


  1. 数据类型

Java 是强类型语言,每个变量必须声明类型。

2.1 基本数据类型(8 种)

类型 关键字 占用字节 取值范围 整型 byte 1 -128 ~ 127 整型 short 2 -32768 ~ 32767 整型 int(默认) 4 约 ±21 亿 整型 long(加 L) 8 极大 浮点型 float(加 F) 4 约 ±3.4e38 浮点型 double(默认) 8 约 ±1.8e308 字符型 char 2 0 ~ 65535(Unicode) 布尔型 boolean 1(JVM 决定) true / false

java 复制代码
// 示例
int age = 25;
long bigNum = 10000000000L;    // 必须加 L
float price = 19.99F;          // 必须加 F
double pi = 3.14159;
char grade = 'A';
boolean isPass = true;

2.2 引用数据类型

· 类(String 等)、接口、数组、枚举都属于引用类型。 · 引用类型变量存储的是对象的地址,而非值本身。

java 复制代码
String name = "Java";   // String 是引用类型
int[] scores = {90, 85}; // 数组也是引用类型

  1. Java 运算符

3.1 算术运算符

      • / %(取余) ++ --
java 复制代码
int a = 10, b = 3;
System.out.println(a / b);   // 3(整数除法)
System.out.println(a % b);   // 1(余数)

int x = 5;
System.out.println(x++);     // 5(先使用后自增)
System.out.println(++x);     // 7(先自增后使用)

3.2 赋值运算符

= += -= *= /= %=

java 复制代码
int n = 10;
n += 5;   // 等价于 n = n + 5 → 15

3.3 比较运算符(返回 boolean)

== != > < >= <=

java 复制代码
System.out.println(10 > 5);   // true
System.out.println(10 == 5);  // false

3.4 逻辑运算符(操作 boolean)

&&(与) ||(或) !(非) ^(异或)

java 复制代码
boolean b1 = true, b2 = false;
System.out.println(b1 && b2);  // false
System.out.println(b1 || b2);  // true
System.out.println(!b1);       // false

3.5 位运算符(了解即可)

& | ^ ~ << >> >>>(无符号右移)

3.6 三元运算符(条件 ? 表达式1 : 表达式2)

java 复制代码
int score = 85;
String result = (score >= 60) ? "及格" : "不及格";
System.out.println(result);   // 及格

  1. 流程控制语句

4.1 条件分支

if-else

java 复制代码
int age = 18;
if (age >= 18) {
    System.out.println("成年");
} else if (age >= 12) {
    System.out.println("少年");
} else {
    System.out.println("儿童");
}

switch(支持 int、char、String、枚举)

java 复制代码
String day = "周一";
switch (day) {
    case "周一":
        System.out.println("上班");
        break;
    case "周日":
        System.out.println("休息");
        break;
    default:
        System.out.println("其他");
}

4.2 循环结构

for 循环

java 复制代码
// 打印 1~5
for (int i = 1; i <= 5; i++) {
    System.out.print(i + " ");
}
// 输出:1 2 3 4 5

while 循环

java 复制代码
int i = 1;
while (i <= 5) {
    System.out.print(i + " ");
    i++;
}

do-while(至少执行一次)

java 复制代码
int i = 1;
do {
    System.out.print(i + " ");
    i++;
} while (i <= 5);

4.3 跳转语句

· break:跳出当前循环或 switch · continue:跳过本次循环剩余代码,进入下一次 · return:结束方法

java 复制代码
for (int i = 1; i <= 10; i++) {
    if (i == 5) break;      // 到5停止
    if (i % 2 == 0) continue; // 跳过偶数
    System.out.print(i + " "); // 输出:1 3 
}

  1. 一维数组

数组是相同类型数据的有序集合,长度固定。

5.1 声明与初始化

java 复制代码
// 方式1:声明并指定长度(默认初始值:int→0,double→0.0,引用→null)
int[] arr1 = new int[3];
arr1[0] = 10;
arr1[1] = 20;
arr1[2] = 30;

// 方式2:直接赋值(静态初始化)
int[] arr2 = {1, 2, 3, 4, 5};

// 方式3:new + 初始化
int[] arr3 = new int[]{6, 7, 8};

5.2 常见操作

java 复制代码
int[] nums = {5, 3, 8, 1, 9};

// 遍历(for)
for (int i = 0; i < nums.length; i++) {
    System.out.print(nums[i] + " ");
}

// 增强 for(for-each)
for (int n : nums) {
    System.out.print(n + " ");
}

// 求最大值
int max = nums[0];
for (int i = 1; i < nums.length; i++) {
    if (nums[i] > max) max = nums[i];
}
System.out.println("最大值:" + max);

  1. 二维数组

本质上是一维数组的元素仍为一维数组(数组的数组)。

6.1 声明与初始化

java 复制代码
// 方式1:指定行数和列数(每个元素默认 0)
int[][] matrix1 = new int[2][3]; // 2行3列

// 方式2:静态初始化
int[][] matrix2 = {
    {1, 2, 3},
    {4, 5, 6}
};

// 方式3:不规则数组(每行长度可以不同)
int[][] matrix3 = new int[2][];
matrix3[0] = new int[]{1, 2};
matrix3[1] = new int[]{3, 4, 5, 6};

6.2 遍历

java 复制代码
int[][] matrix = {
    {1, 2, 3},
    {4, 5, 6},
    {7, 8, 9}
};

// 普通嵌套 for
for (int i = 0; i < matrix.length; i++) {
    for (int j = 0; j < matrix[i].length; j++) {
        System.out.print(matrix[i][j] + " ");
    }
    System.out.println();
}

// 增强 for 嵌套
for (int[] row : matrix) {
    for (int val : row) {
        System.out.print(val + " ");
    }
    System.out.println();
}

6.3 常见应用:矩阵加法

java 复制代码
int[][] a = {{1,2},{3,4}};
int[][] b = {{5,6},{7,8}};
int[][] sum = new int[2][2];

for (int i = 0; i < a.length; i++) {
    for (int j = 0; j < a[0].length; j++) {
        sum[i][j] = a[i][j] + b[i][j];
    }
}
// 输出 sum 为 {{6,8},{10,12}}

  1. 本课总结

知识点 核心要点 Java 概述 跨平台、JVM、面向对象 数据类型 8 种基本类型 + 引用类型(String、数组等) 运算符 算术、赋值、比较、逻辑、三元 流程控制 if-else、switch、for、while、do-while、break/continue 一维数组 声明、初始化、length、遍历、增删改查思路 二维数组 行优先、不规则、双重遍历

✨ 下一课预告:面向对象编程(类与对象、封装、构造方法、this 关键字)。

相关推荐
海盗12341 小时前
微软技术周报 ——2026-08-03
后端·python·microsoft·c#·.netcore
沙湖遇雨1 小时前
6. Pipeline 的生命周期
后端
青青子衿悠悠我心1 小时前
TRAE Work让财务月底对账3小时变5分钟
后端
创安电气研究所2 小时前
用TypeScript给Modbus设备做一层适配器
后端
妙码生花2 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(五十):增加管理员角色组管理
前端·后端·ai编程
妙码生花2 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(五十一):管理员和角色组的关联
前端·后端·ai编程
ThsPool2 小时前
【ENVI二次开发学习整理 04】ENVI功能扩展与二次开发
java·前端·javascript
赤壁小虾2 小时前
【渲染流水线】[逐片元阶段]-[透明度测试]以UnityURP为例
java·前端·数据库
Zane19943 小时前
@property 到底是怎么把方法伪装成属性的?一文吃透 property、staticmethod、classmethod
后端·python