news 2026/4/16 19:12:17

Java变量与数据类型全解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java变量与数据类型全解析

一、变量

1.1字面量

字面量就是Java程序中出现的数据。

字面量的种类:

字面量类型说明举例
整数类型直接写18
小数类型直接写,加上小数点19.3
字符串类型用双引号引起来“hello java”
字符类型用单引号引起来,内容只能有一个‘A’
布尔类型布尔值,表示真假true或者false
空类型一个特殊的值,空值null

1.2变量

1.2.1java中的变量是什么?

在C语言中,我们创建变量的时候实际是向内存中申请一块空间,在java中,变量实际可以抽象看作一个存储单个数据的容器,而不是容器中的内容,变量是存储数据的小空间而不是里面的数据。我们把经常改变的数据放到变量中存储。

1.2.1变量的定义格式

举例:int a = 10
其中int 是数据类型,a是变量名为小空间起名字,10是数据值是存在空间里面的值。"="是赋值,把10放到变量中。

小练习:用IDEA实现

1.2.3变量的注意事项

  1. 变量里面只能存一个值
  2. 变量名不允许重复定义
  3. 变量在使用之前一定要进行赋值
  4. 一条语句可以定义多个变量,也可以连续赋值

二、计算机的存储规则

2.1数字在计算机中是怎么存的

2.1.1进制

十进制:由0123456789组成,特点逢十进一
二进制:由0和1组成,特点逢二进一
0:二进制中的0
1:二进制中的1
2:二进制中的10
3:二进制中的11
4:二进制中的100

  1. 在计算机中,任意数据都是以二进制的形式来存储的
  2. 在计算机中,不同类型的数据有不同的存储单元

int a =10; 二进制:1010
由于中int类型占八个字节,所以还要在前面补上一些0

存储单元:计算机中最小的存储单元是字节,一个字节就是8个比特位

三、数据类型

数据类型分为两种:基本数据类型和引用数据类型

3.1java中的基本数据类型

整数类型:

整数类型取值范围内存(字节)
byte-128~1271
short-32768~327672
int-2147483648~2147483647(10位数)4
long-9223372036854775808~9223372036854775807(19位数)8

小数类型:

小数取值范围内存
float−3.402∗1038至3.402∗1038-3.402*10^{38}至3.402*10^{38}3.40210383.40210384
double−1.797∗10308至1.797∗10308-1.797*10^{308}至1.797*10^{308}1.797103081.797103088

字符类型

char类型 占2个字节,存储字符或者字符串

布尔类型

boolean 占1个字节 true/false

练习(请在IDEA中实现)

注意:定义long类型变量,数据值后面要加大写的L或者小写的l,建议写成大写的L不加会报错,另外在定义float类型变量时要在结尾加F或者f。一般写成大写的。

数据类型练习:

publicclassVariableDemo5{publicstaticvoidmain(String[]args){//BMI=体重/身高的平方//定义变量记录的我的体重doubleweight=50;//定义变量记录我的身高doubleheight=1.7;//计算BMIdoublebmi=weight/(height*height);System.out.println(bmi);//拓展:当前身高在标准BMI下,体重最多是多少千克?}}

四、标识符

标识符:代码中所有我们自己起的名字,起名规则我们通常会遵守阿里巴巴规范

4.1标识符的命名规则

4.1.1规定

由数字、字母、下划线_、美元符$组成
不能以数字开头
不能用关键字命名
区分大小写

4.1.2建议

见名之意,驼峰命名

五、键盘录入

获取键盘按下的数据,并保存在变量当中
代码实现:

importjava.util.Scanner;publicclassVariableDemo6{publicstaticvoidmain(String[]args){//键盘录入//先找到打工人Scanner,只需要写一次Scannersc=newScanner(System.in);inta=sc.nextInt();//接收键盘输入的值System.out.println(a);charb=sc.nextChar();//接收字符floatc=sc.nextFloat();//接收浮点数string str=sc.next();//接收文本}}

键盘录入练习:

六、算术运算符

6.1算术运算符


算术运算符操作:

packageoperator;publicclassOperatorDemo1{publicstaticvoidmain(String[]args){inta=10;intb=3;System.out.println(a+b);//13System.out.println(a-b);//7System.out.println(a*b);//30System.out.println(a/b);//3System.out.println(a%b);//1System.out.println("-----------");//小数直接参与计算,计算结果可能是不精确的}}
  1. 整数相除结果是整数
  2. 小数直接参与结算结果可能不精确

练习:数值拆分

importjava.util.Scanner;publicclassOperatorDemo2{publicstaticvoidmain(String[]args){//拆分数值5Scannersc=newScanner(System.in);//找到打工人System.out.println("请输入一个数字:");inta=sc.nextInt();//接收键盘输入的数字intnum1=a%10;intnum2=a/10%10;intnum3=a/100;System.out.println("个位数是:"+num1);System.out.println("十位数是:"+num2);System.out.println("百位数是:"+num3);}}

运算符练习题:

6.2类型转换

算术运算的三种类型

  1. 数字运算
  2. 字符运算
  3. 字符串运算

数字运算:类型不一样不能运算,需要转换成同类型的才能计算
以取值范围为标准转换,把范围小的转换成范围大的
隐式转换不需要写代码


强制转换

6.3字符运算

packageoperator;publicclassOperatorDemo6{//单个字母的大小写转换//A------>apublicstaticvoidmain(String[]args){charch='A';charcc=(char)(ch+32);System.out.println(cc);}}

6.4字符串运算


任意数据+字符串 都是拼接操作,产生新的字符串

七、自增自减运算符

++:
变量的值+1变量的值+1变量的值+1

- -:
变量的值−1变量的值-1变量的值1

八、赋值运算符

九、关系运算符


十、逻辑运算符


短路逻辑运算符:

十一、三元运算符

十二、运算符的优先级

十四、结语

本篇是java入门的语法篇,主要介绍java编程语言中的一些基本语法为后续学习打下基础,不难发现java的一些基本语法和C语言中类似,所以要学会触类旁通,学习并掌握了一门编程语言后再学习其他的编程语言效率会比零编程基础直接学习更高,因为编程语言的本质是互通的。

ppt部分的截图来自黑马程序员,是B站一个非常不错的博主,推荐他的课程
若文章中存在任何错误欢迎批评指正,大家共同进步!

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

MTKClient终极救砖指南:让联发科设备起死回生的完全解决方案

MTKClient终极救砖指南:让联发科设备起死回生的完全解决方案 【免费下载链接】mtkclient MTK reverse engineering and flash tool 项目地址: https://gitcode.com/gh_mirrors/mt/mtkclient 当你的联发科设备突然黑屏变砖,官方售后报价高昂&#…

作者头像 李华
网站建设 2026/4/16 16:13:28

3步打造你的专属Minecraft启动器:PCL2-CE智能管理助手全面指南

3步打造你的专属Minecraft启动器:PCL2-CE智能管理助手全面指南 【免费下载链接】PCL2-CE PCL2 社区版,可体验上游暂未合并的功能 项目地址: https://gitcode.com/gh_mirrors/pc/PCL2-CE 你是否也曾经历过这样的困扰:想玩不同版本的Min…

作者头像 李华
网站建设 2026/4/16 14:32:17

WarcraftHelper开源辅助工具完全使用指南

WarcraftHelper开源辅助工具完全使用指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 问题导向:解决《魔兽争霸III》现代系统适配难题 …

作者头像 李华
网站建设 2026/4/16 13:29:45

2025网盘加速工具深度评测:非会员如何破解下载限速难题

2025网盘加速工具深度评测:非会员如何破解下载限速难题 【免费下载链接】Online-disk-direct-link-download-assistant 可以获取网盘文件真实下载地址。基于【网盘直链下载助手】修改(改自6.1.4版本) ,自用,去推广&…

作者头像 李华
网站建设 2026/4/15 14:46:42

告别终端命令?这款图形化工具让macOS软件管理效率提升300%

告别终端命令?这款图形化工具让macOS软件管理效率提升300% 【免费下载链接】Applite User-friendly GUI macOS application for Homebrew Casks 项目地址: https://gitcode.com/gh_mirrors/ap/Applite 作为macOS用户,你是否仍在为软件管理效率低下…

作者头像 李华