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 关键字)。

相关推荐
SeaDhdhdhdhdh1 天前
MCP Server 搭建与使用指南
java·ai·agent·mcp
YH55269841 天前
GPT‑5.6 Sol 原本支持 1M 上下文,Codex 现已放开此前限制,如何看待这次调整?
java·jvm·人工智能·gpt·算法·chatgpt
AI_小站1 天前
刚面完百度的 Agent 开发岗,我才发现:世界就是个巨大的草台班子
java·开发语言·人工智能·spring·百度·langchain
笃行3501 天前
向量数据库单独建一套,这笔账划不划算
后端
许彰午1 天前
03-三种开发模式
java·架构
涟漪海洋1 天前
创建最新的JDK25镜像,非root环境启动
java
weixin_431600441 天前
Agent Workflow 学习向:Code 节点,比模板更强的变量加工
后端·python·学习·ai·
Rain的Java大神之路1 天前
短信接口被狂刷怎么处理
java·运维·后端·web安全·面试·架构·xss
2602_959960921 天前
谢飞机面试大厂:Spring Boot、JVM、Redis、Kafka、微服务与音视频搜索场景求生实录
java·jvm·spring boot·redis·面试题
Zane1994121 天前
CAS 与原子类:Java 如何实现无锁编程
java·开发语言