news 2026/8/26 19:18:03

Java 基础|变量、数据类型、类型转换、表达式与运算符

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java 基础|变量、数据类型、类型转换、表达式与运算符

一、变量

(1)概念

变量是计算机内存中的一块空间,是程序中存储数据的基本单元。

(2)变量的组成部分

  • 数据类型:决定变量在内存中的空间大小
  • 变量名:用于访问变量对应的内存空间
  • 数据:变量里面存储的实际值

(3)变量的定义

  1. 声明:数据类型 变量名;
int a;
  1. 赋值:变量名 = 数据;
a = 5;

(4)变量其他定义方式

  1. 声明同时赋值
数据类型 变量名 = 数据;
  1. 同时定义多个同类型变量
数据类型 变量名1,变量名2,变量3=值,变量4;

二、数据类型

存储单位换算 位 (bit /b),字节 (Byte / B) 1B = 8b 1KB=1024B、1MB=1024KB、1GB=1024MB、1TB=1024GB

Java 数据类型分为两大类:基本数据类型引用数据类型

1. 基本数据类型(原始数据类型,共 8 种)

(1) 整数类型

表格

类型字节取值范围注意事项
byte1B-128 ~ 127
short2B-32768 ~ 32767
int4B-2147483648 ~ 2147483647整数默认字面值为 int
long8B-9223372036854775808 ~ 9223372036854775807long 字面值末尾建议加大写L,区分数字 1

字面值:程序中直接书写出来的数据。 Java 是强类型语言

(2) 小数(浮点)类型

表格

类型字节说明注意事项
float4B单精度字面值后面必须加F/f
double8B双精度字面值 D/d 可省略,开发中优先使用 double

float、double 使用科学计数法,是近似存储,非精确存储

📌面试题:8 字节 long 和 4 字节 float 哪个存储的数据范围更大? 答案:float 范围更大,底层采用科学计数法存储。

(3) 字符类型 char
  • 占用:2 字节,基于 Unicode(万国码)编码
  • 三种字面值写法
//① 单引号包裹单个字符【开发重点】 char c1 = 'A'; //② 直接写整数,对应Unicode编码值 char c2 = 65; //代表字符 'A' //③ 十六进制unicode形式【了解】 char c3 = '\u0041'; //代表字符 'A'

转义字符\,改变原有字符含义

\' //单引号 \" //双引号 \n //换行 \t //Tab缩进 \\ //反斜杠
(4) 布尔类型 boolean
  • 只有两个字面值:truefalse
  • ⚠️区别 C 语言,Java 不允许使用 0/1 表示真假。

2. 引用数据类型(对象类型)

包含:数组、类、接口等。

String字符串属于引用数据类型

  • 字面值使用双引号包裹,可以是一个或多个字符
String str = "ada";

📌开发小案例:个人信息对应数据类型

表格

信息推荐数据类型
姓名String
年龄int
成绩double
性别char / String
地址String
电话号码String(避免开头 0 丢失)
身份证号String(存在字母 X)

三、数据类型提升

1. 自动类型提升

条件:类型互相兼容;小范围类型赋值给大范围类型,自动转换

提升顺序:

byte --> short --> int --> long --> float --> double char --> int --> long --> float --> double

2. 强制类型转换

条件:类型互相兼容;大范围类型赋值给小范围类型,需要手动强转

语法:

目标类型 变量名 = (目标类型) 源变量;

特点:

  1. 小数强制转整数:直接截断小数部分,只保留整数
  2. 大数据数值落在小类型范围内,数据可以完整保存
  3. boolean 不能参与任何类型转换,强制转换也不行

四、表达式

  1. 概念:由变量、字面值、运算符组成的式子,运算之后会产生一个结果。
  2. 表达式结果处理
  • 结果只用一次:直接写在使用位置;
  • 结果多次使用:存入变量保存。

表达式运算结果类型规则:

  1. 只要有 double 参与运算,结果就是 double
  2. 没有 double,有 float 参与,结果为 float
  3. 没有 double、float,有 long 参与,结果为 long
  4. 其余全部情况,结果都是int包含:byte+byte、byte+short、short+short、byte+int、int+int

📌面试题:分析下面代码能否编译通过

byte b=1; b = b + 1;

解析:编译报错。b+1运算时 byte 提升为 int,表达式结果是 int,int 不能直接赋值给 byte。

五、运算符

1. 算术运算符

+-*/%(取余 / 取模)

注意:boolean 不能参与算术运算 特殊规则:+只要任意一端是 String,则变成字符串拼接,最终结果为字符串。

2. 赋值运算符

普通赋值:=复合赋值:+=-=*=/=%=

⚠️重点:复合赋值运算符底层自带强制类型转换,不会遵循普通自动类型提升。

📌面试题:对比两段代码

//代码1 byte b=1; b = b + 1; //编译报错,b+1结果提升为int //代码2 byte b2=1; b2 += 1; //编译通过,底层等价 b2=(byte)(b2+1)

3. 一元运算符(自增自减 ++ /--)

  • a++先使用原值,变量再自增 1
int a=2; int c = a++; // c=2,a=3
  • ++a变量先自增 1,再使用新值
int a=2; int c = ++a; // a=3,c=3

开发建议:多数场景只做变量自身 + 1/-1,不接收表达式返回结果。

4. 关系运算符

==<<=>>=!=

关系运算结果一定是 boolean,成立为 true,不成立为 false,得到布尔表达式。

5. 逻辑运算符

&&短路与、||短路或&非短路与、|非短路或

逻辑运算符两边必须是布尔表达式。

  • &&短路与:左侧为false右侧代码不会执行,直接整体 false
  • &非短路与:无论左侧 true/false,左右全部执行
  • ||短路或:左侧为true,右侧不再执行
  • |非短路或:两边全部执行

📌面试:&&&的区别&&短路与:左侧结果为 false,直接确定整体结果 false,右侧代码不执行;&非短路与:无论左侧结果,左右两侧表达式都会完整执行。

6. 三元(三目)运算符

语法:

布尔表达式 ? 表达式1 : 表达式2

执行逻辑: 布尔表达式结果为true,执行表达式 1; 布尔表达式结果为false,执行表达式 2。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/26 19:13:15

[光学原理与应用-549]:用光量子的三重底层特征(粒子性、波动性、随机性)阐述线性光学特征和非线性光学特征,以及介质自身的特征如何影响光量子与介质的相互作用,以及展现出宏观特征。

基于光子三重特征解析线性 / 非线性光学&#xff0c;以及介质如何塑造宏观光学现象光子三大底层特征回顾&#xff1a;粒子性&#xff1a;光子能量为固定一份&#xff0c;不可切分&#xff1b;相互作用时光子只能整体湮灭或整体产生&#xff0c;不存在部分光子参与反应。波动性&…

作者头像 李华
网站建设 2026/8/26 19:09:39

代码里实际能看到的路径 + 注释里的设计意图

下面按代码里实际能看到的路径 + 注释里的设计意图,说明 AutomaticStationPipeline 何时创建、何时销毁,以及中间状态怎么变。 1. 它是什么、挂在哪 类型:AutomaticStationPipeline(站内 5 个 Worker + 5 个 Channel) 持有者:StationControlViewModel 的字段 _automaticP…

作者头像 李华
网站建设 2026/8/26 19:05:18

Kimi苹果版导出表格的终极解法:当“AI导出鸭”重新定义效率边界

Kimi苹果版导出表格的终极解法&#xff1a;当“AI导出鸭”重新定义效率边界 在移动办公场景中&#xff0c;一个被反复提及却始终未被妥善解决的痛点&#xff0c;正随着大模型能力的跃迁而愈发尖锐——Kimi苹果版生成的表格&#xff0c;究竟如何无损导出&#xff1f; 这个问题在…

作者头像 李华
网站建设 2026/8/26 18:56:05

操作教程丨WorkBuddy 接入企业数据MCP流程与应用示例

随着 AI Agent 应用的发展&#xff0c;越来越多智能体开始从简单的信息问答&#xff0c;向任务执行和数据分析方向发展。但在实际企业场景中&#xff0c;模型自身掌握的信息往往无法满足实时查询需求&#xff0c;例如企业尽调、供应商审核、投资分析等任务&#xff0c;都需要结…

作者头像 李华