Java 基础核心知识学习记录

这周我开始了JAVA的学习。说实话,刚开始的时候我心里还挺没底的,毕竟 Java 这玩意儿听起来就挺高大上,什么虚拟机、垃圾回收、面向对象,一堆名词砸过来,感觉像是要学一门"天书"。不过因为之前学过 C 语言,所以上手的时候其实没那么慌——像变量、数据类型、运算符这些概念,在 C 里都见过,只是换了个写法而已。而且说实话,C 语言当年也没少折磨我,什么数组、内存管理,那叫一个头大,现在回头看,那些"痛苦"反而成了学 Java 的底气。不过 Java 毕竟是面向对象的语言,很多细节和 C 还是不太一样,比如类型转换的规则、字符串的拼接方式,还有底层那些原码反码补码的运算,都得重新捋一遍。有时候写着写着也会卡壳,查半天资料才发现原来是个小细节没注意到,那种感觉真是“酸爽”。下面这份笔记,就是我最近整理出来的 Java 基础核心知识,从字面量、变量到原码反码补码,再到运算符和 Scanner 录入,希望能帮到和我一样正在入门路上的小伙伴。大家一起加油,慢慢来,总会啃下来的!

一、基础语法:字面量与变量

这一节算是 Java 里最基础的东西了,说白了就是先搞清楚“数据长什么样、怎么存起来”。

1. 字面量(Literals)

字面量这个词听起来挺唬人,其实说白了就是程序里直接写出来的那些数据值,比如你写个 18,写个 "中国",这些都是字面量。不同类型的字面量,写法上还有点讲究,咱们看下面这张表就清楚了:

字面量类型说明举例
整数类型直接写18, -88
小数类型直接写,加上小数点1.93, -5.21
字符串类型用双引号引起来"中国"
字符类型用单引号引起来,内容只能有一个'男', 'A', '0'
布尔类型表示真假true, false
空类型一个特殊的值,空值null

这里有个小坑得提醒一下:字符串和字符看着像,其实完全不是一回事。字符串用双引号,里面可以装一长串;字符用单引号,里面只能放一个,多一个都不行,写错了编译器直接给你报错,别问我怎么知道的。

2. 变量(Variables)

变量这东西,你可以把它想象成一个带名字的小盒子,里面可以放数据。为啥要有变量?因为很多时候数据是会变的,你总不能每次都重新写一遍吧,那多麻烦。

  • 定义格式:数据类型 变量名 = 数据值;
  • 使用场景:当某个数据经常发生改变时,将其定义为变量。
  • 注意事项:
    • 变量中只能存一个值;变量名不能重复。
    • 变量使用前一定要赋值(初始化)。
    • 一条语句可以定义多个变量(如 int a = 1, b = 2;)。

注意:变量名别乱起,最好起个能看懂的名字,不然过两天你自己回头看代码,都得猜半天这变量是干嘛的。

二、数据类型与标识符

1. 计算机存储规则

  • 在计算机中,任意数据都是以二进制的形式来存储的。
  • 字节(Byte)是计算机最小的存储单元,1个字节 = 8个bit位(bits)。
  • 在 Java 中,int 类型占 4个字节 / 32个bit位。

2. 基本数据类型(四类八种)

  • 整数:byte(1字节),short(2字节),int(4字节),long(8字节)
  • 小数:float(4字节),double(8字节)
  • 字符:char(2字节)
  • 布尔:boolean(1字节)
  • 取值范围大小关系:double > float > long > int > short > byte
  • 后缀说明:定义 long 类型需加 L 后缀;定义 float 类型需加 F 后缀。

3. 标识符

标识符就是代码中所有我们自己起名的名字(如类名、变量名)。

  • 硬性要求:由数字、字母、下划线 _、美元符 $ 组成;不能以数字开头;不能是 Java 关键字。

三、计算机底层数据表示:原码、反码与补码

在 Java(及现代计算机)中,整数的运算在底层都是以补码的形式进行的。理解这三者,是理解计算机处理负数运算的关键。

1. 原码

最直观的二进制形式。最高位是符号位(0正,1负)。弊端:负数计算时结果会出错,运算方向与正确方向相反。

2. 反码

为了解决原码不能计算负数的问题。正数反码不变,负数反码在原码基础上,符号位不变,数值位取反(0变1,1变0)。弊端:负数运算时,如果结果跨越了 0,结果会与实际不符。

3. 补码

彻底解决跨 0 运算出错的问题。计算机底层存储和运算统一使用补码。正数补码与原码相同;负数补码 = 反码 + 1。

四、运算符与类型转换

1. 类型转换

  • 隐式转换(小 -> 大):不同类型数据计算时,Java 自动转换。如有 byte/short 先提升为 int,再将取值范围小的提升为大的。
  • 强制转换(大 -> 小):需要显式写代码,弊端:有可能导致精度丢失。

2. 字符与字符串运算

  • ASCII 码:字符参与算术运算时,会先根据 ASCII 码表转化为对应的整数(如 'A' 是 65,'a' 是 97)。
  • 字符串运算:字符串只有 + 操作。任意数据 + 字符串都是拼接操作,并产生一个新的字符串。例如:10 + 8 + "岁" + 1 + 2 的结果是 "18岁12"。

3. 常见运算符

  • 算术运算符:+, -, *, /, %(取余)。
  • 赋值运算符:=, +=, -= 等。
  • 三元运算符:关系表达式 ? 表达式1 : 表达式2;。表达式成立执行1,不成立执行2。
  • 优先级:括号 () 最高;其次是 !、正负号;再次是 * / %;然后是加减;最后是关系、逻辑运算符等。

五、键盘录入(Scanner)

使用 Scanner 类可以接收键盘输入的数据:

import java.util.Scanner; public class Demo { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 1. 创建对象 // 2. 接收数据 // int num = sc.nextInt(); // 接收整数 // double d = sc.nextDouble(); // 接收小数 String str = sc.next(); // 接收字符串 } }

*下周学习目标:逻辑与结构

从下周开始,我将告别单一的语法零件,开始学习如何让程序"思考"和"动"起来。

目标一:流程控制语句

  • 掌握 if、switch 判断语句和 for、while 循环语句。
  • 学会使用 break 和 continue 控制流程。

目标二:数组

  • 掌握数组的初始化、遍历和常见操作。
  • 理解数组的内存原理,学会处理越界、空指针等异常。

目标三:方法

  • 理解方法的作用,掌握方法的定义与调用。
  • 掌握带参数、带返回值的方法。

学习注意:下周内容逻辑性强,多画流程图,多敲代码。遇到报错不要慌,学会看控制台的报错信息。祝大家学习顺利!

相关新闻

3分钟理清AQS与其子类的那些事

3分钟理清AQS与其子类的那些事

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 18:41:37 阅读更多 →
【拯救HMI】:工业4.0时代,为什么你的设备还长着一张“2.0时代的脸”?

【拯救HMI】:工业4.0时代,为什么你的设备还长着一张“2.0时代的脸”?

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 18:40:37 阅读更多 →
Java程序员转AI开发:不用先清空重学,重点补这4项能力

Java程序员转AI开发:不用先清空重学,重点补这4项能力

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 18:40:37 阅读更多 →

最新新闻

Windows 开源输入法选型与配置实战:从 IME 机制到小狼毫

Windows 开源输入法选型与配置实战:从 IME 机制到小狼毫

如果你只是聊聊天、敲敲普通文档,Windows 自带的输入法确实够用。可一旦你需要在 Windows 上写代码、维护长篇文档、录入特殊符号,甚至同时保持拼音、五笔、注音几套输入习惯,自带输入法的短板就会一点点冒出来:词库排序不顺手、自…

2026/10/19 19:34:52 阅读更多 →
AI如何降低网店获客成本?从自动回复到意图识别的转化实战

AI如何降低网店获客成本?从自动回复到意图识别的转化实战

在这个流量越来越贵、平台规则越来越细的时候,很多做网店的朋友问我:AI到底能不能帮我把获客成本降下来?我的回答是,能,但前提是你得把它当成一个可以训练的销售助理,而不是许愿池里的锦鲤。今天我就拿大家…

2026/10/19 19:33:50 阅读更多 →
交通标志检测识别系统:YOLOv8+OpenCV+PyQt5实战

交通标志检测识别系统:YOLOv8+OpenCV+PyQt5实战

1. 方案选型与实际价值先说结论:这个项目是很多人入手深度学习落地时的首选练手目标。原因很简单——交通标志检测有真实场景价值,模型效果直观,又能把算法、界面、图像处理全部串起来。用 Python 作为底座,YOLOv8 负责目标检测&a…

2026/10/19 19:33:50 阅读更多 →
钢材表面缺陷检测实战:从YOLOv5到YOLOv10的选型与部署

钢材表面缺陷检测实战:从YOLOv5到YOLOv10的选型与部署

钢材表面质量把控这件事,在很长一段时间里都靠质检员肉眼盯。带钢在产线上以每分钟几百米的速度跑,缺陷转瞬即逝,人盯久了必然疲劳,漏检几乎无法避免。这也是基于深度学习的表面缺陷检测这几年在金属加工行业里反复被讨论的原因。…

2026/10/19 19:32:49 阅读更多 →
PDF转Excel不乱格式:从表格识别到数据校验的完整实操指南

PDF转Excel不乱格式:从表格识别到数据校验的完整实操指南

1. 为什么PDF转Excel,表格结构总是乱七八糟先放过工具推荐,聊一个更扎心的问题:为什么PDF转Excel,十次有八次转出来是乱的?我接触过大量做财务、做数据整理的同行,大家对这种场景应该都不陌生——收到一份上…

2026/10/19 19:31:48 阅读更多 →
TensorFlow 分布式 FFT 实战:数据切分、跨设备转置与性能优化

TensorFlow 分布式 FFT 实战:数据切分、跨设备转置与性能优化

做大规模谱分析的人,很多都会在某个阶段撞上同一堵墙:数据越算越大,FFT 开始成为整条流水线里最慢的环节。TensorFlow 里的分布式快速傅里叶变换,乍一看就是把tf.signal.fft2d放到多张卡上跑,实际做起来才会发现&#…

2026/10/19 19:31:48 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →