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

相关推荐
Ivanqhz23 分钟前
激活函数在 Transformer 中的作用及各种变体简述
java·linux·数据库·人工智能·深度学习
沙漠之主1 小时前
C++编程教学设计资料:从入门到实战的完整课程方案
java·前端·c++
FPGA小徐1 小时前
PA1 基础设施(2)深度解析:NEMU 中 ITRACE、MTRACE、FTRACE、IRINGBUF、ETRACE、DIFFTEST 全解析
java·服务器·网络
YOLO数据集集合2 小时前
EvoAgent:面向PR研发治理的自进化Multi-Agent Harness系统
java·开发语言·目标检测·agent·自进化
hsfxuebao2 小时前
Loop Engineering 保姆级教程 + 项目实战
人工智能·后端
知行EDI2 小时前
知行之桥 MaBang 端口使用指南——Create Order 订单创建篇
java·服务器·数据库
笑鸿的学习笔记2 小时前
C++笔记之大块顺序写
java·c++·笔记
打工仔折腾 AI2 小时前
从 Demo 到生产级 Agent:8 个关键设计机制与 Python 实现拆解
java·jvm·人工智能·后端·python·langchain·ai agent 实战
架构技术专栏2 小时前
交叉熵:AI 怎样给概率预测打分
后端
殷色玫瑰3 小时前
C/C++ 内存管理详解:从内存分布到 new/delete 底层原理
java·linux·c语言·c++