数据类型及变量的定义、使用和注意事项

news2025/1/23 2:02:26

数据类型

计算机存储单元

变量的定义格式:

数据类型 变量名=数据值;

  1. 我们知道计算机是可以用来存储数据的,但是无论是内存还是硬盘,计算机存储设备的最小信息单元叫“位( bit ) ",我们又称之为“比特位”,通常用小写的字母”b"表示。而计算机中最小的存储单元叫“字节( byte )”,通常用大写字母”B"示,字节是由连续的8个位组成。
  2. 常用的存储单位:

                1B(字节)=8bit

                1KB = 1024B

                1MB = 1024KB

                1GB = 1024MB

                1TB = 1024GB

                1PB= 1024TB

                 ......

数据类型

  1. Java语言是强类型语言,对于每一种数据都给出了明确的数据类型,不同的数据类型也分配了不同的内存空间,所以它们表示的数据大小也是不一样的。
  2. ●常量【没有手动指定数据类型】但只要是数据,就会存在数据类型
    public static void main(String[] args){
    	//整数类型,默认为 int
    	System.out.println(10);
    	//浮点类型(小数类型),默认为 double 
    	System.out.println(12.3);
    }

数据类型内存占用和取值范围

  1. ●不同的数据类型也分配了不同的内存空间,所以它们表示的数据大小也是不一样的。

数据类型

关键字

内存占用(字节)

取值范围

整数

byte

1

-128~127

short

2

-32768~32767

int

4

-2的31次方到2的31次方-1

long

8

-2的63次方到2的63次方-1

浮点数

float(单精度)

4

1.401298e-45到3.402823e+38

double(双精度)

8

4.9000000e-324到1.797693e+308

字符

char

2

0-65535

布尔

boolean

1

true, false

  1. ------ int , double (默认)
  2. 说明:e+38表示是乘以10的38次方,

同理,e-45表示乘以10的负45次方



变量的定义和使用

变量的定义

1.变量的定义格式

数据类型 变量名=数据值;

public class Demo1Variable{
	/*
		基本数据类型:
		
			整数:
					byte	1个字节
					short	2个字节 
					int  	4个字节
					long	8个字节
			
			小数:
					float	4个字节
					double	8个字节 
			
			字符:
					char	2个字节
					
			布尔:
					boolean	1个字节
	*/
	public static void main(String[] args){
		//格式:数据类型 变量名=数据值; 
		
		//整数类型变量
		int a=10; 
		System.out.println(a); 
		
		//小数类型变量
		double b=12.3;
		System.out.println(b); 
		
		//字符类型变量
		char c='a';
		System.out.println(c);
		
		//布尔类型变量
		boolean d=true;
		System.out.println(d); 
	}
}
 

2.整数,小数,字符,布尔类型变量的定义

int a=10;
double b=11.1;
char c='a';
boolean d=true;
 

变量的使用

●根据标识,变量名进行使用

定义变量:int a=10;
打印值:System.out.println(a);
修改值:a=30;
打印值:System.out.println(a);

||----->

public class Demo2Variable{
	public static void main(String[] args){
		int a=10;
		System.out.println(a);
		a=30;
		System.out.println(a);//原本存在内存中的10被修改为30
	}
}
 

变量的使用详解

总结:

变量就是内存中的空间,内部存储着不断发生变化的数据



变量的注意事项

变量的定义和使用

变量的注意事项

●变量名不允许重复定义

●一条语句可以定义多个变量,但需要使用逗号进行分割

●变量在使用之前一 定要进行赋值

●定义float和long变量的注意事项

●变量的作用域范围

1.变量名不允许重复定义

public class Demo1{
	/*
		1.变量名不允许重复定义
	*/
	public static void main(String[] args){
		int a=10;
		//int a=20; //目的:修改a值,此处为错误示范,应该改为 a=20; 如下: 
		a=20;
		System.out.println(a);
	}
}

2.一条语句可以定义多个变量,但需要使用逗号进行分割

public class Demo2{
	/*
		2.一条语句可以定义多个变量,但需要使用逗号进行分割
		一条语句:Java当中使用分号作为一条语句的结束. 
	*/
	public static void main(String[] args){
		//一条语句可以定义多个变量,但需要使用逗号进行分割
		int a=10,b=20,c=30;
		System.out.println(a);
		System.out.println(b);
		System.out.println(c);
	}
}
 

3.变量在使用之前一定要进行赋值

public class Demo3{
	/*
		3.变量在使用之前一定要进行赋值
	*/
	public static void main(String[] args){
		int a=10;
		System.out.println(a);
	}
}
 

4.定义float和long变量的注意事项

public class Demo4{
	/*
		4.定义 float和 long变量的注意事项
		
			定义 float类型变量的时候:需要在数值后面加入 F的标识,F可以大写也可以小写.
			
			定义 long类型变量的时候:需要在数值后面加入 L的标识,L可以大写也可以小写
			
				但是,建议大写 
	*/
	public static void main(String[] args){
		//定义 float类型变量的时候:需要在数值后面加入 F的标识,F可以大写也可以小写.
		float a=12.3F;
		
		//定义 long类型变量的时候:需要在数值后面加入 L的标识,L可以大写也可以小写
		long b=1000L; 
		System.out.println(a);
		System.out.println(b);
	}
}
 

5.变量的作用域范围

public class Demo5{
	/*
		5.变量的作用域范围
		
			变量的作用域:只在它所在的大括号有效 
	*/
	public static void main(String[] args){
		int a=10;
		System.out.println(a);
		{
			int b=20;
			//当这个大括号中的代码执行完毕后,内部所[定义]的变量就会从内存中消失 
		}
		//定义 long类型变量的时候:需要在数值后面加入 L的标识,L可以大写也可以小写
		System.out.println(b);//b先前没被定义,报错 
	}
}


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/434118.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

生态-化学反应

生态,确实需要化学反应。但是如果不知道化学反应的各种前置条件,化学反应是不可能反应的。所以我们需要了解这些知识,并且把这些知识迁移到人类社会经济活动中。最厉害的人就是:范式提炼-范式迁移。 老贾就是不知道这些知识&#…

Poseidon Hash

之前我们介绍了zk友好的哈希函数Anemoi,今天我们介绍另一种zk友好的哈希函数Poseidon Poseidon采用 sponge/squeeze 结构,该结构吸纳万物并生成固定大小的输出,内部有一个状态 S ( s 1 , s 2 , . . . , s t ) S(s_1,s_2,...,s_t) S(s1​,s2…

真题详解(UML部署图)-软件设计(五十二)

真题详解(地址索引)-软件设计(五十一)https://blog.csdn.net/ke1ying/article/details/130211684 瀑布模式:适应 开发大型项目,且需求明确。 演化模式:适应 对软件需求缺乏准确认知。 螺旋模式&#xff…

C语言CRC-32 MPEG-2格式校验函数

C语言CRC-32 MPEG-2格式校验函数 CRC-32校验产生4个字节长度的数据校验码,通过计算得到的校验码和获得的校验码比较,用于验证获得的数据的正确性。基本的CRC-32校验算法实现,参考: C语言标准CRC-32校验函数 不同应用规范通过对输…

阿里JAVA架构师面试136题含答案:JVM+spring+分布式+并发编程

此文包含 Java 面试的各个方面,史上最全,苦心整理最全Java面试题目整理包括基JVM算法数据库优化算法数据结构分布式并发编程缓存等,使用层面广,知识量大,涉及你的知识盲点。要想在面试者中出类拔萃就要比人付出更多的努…

Baklib在线知识库/帮助中心:让知识无限延伸

在今天这个信息爆炸的时代,各行各业都需要一个高效的知识管理系统来帮助他们更好地组织和分享知识。Baklib在线知识库/帮助中心就是这样一个优秀的工具,它可以帮助您轻松地创建、管理和分享知识,让您的团队和客户更加高效地工作。 什么是Bakl…

Linux进程控制【进程程序替换】

✨个人主页: Yohifo 🎉所属专栏: Linux学习之旅 🎊每篇一句: 图片来源 🎃操作环境: CentOS 7.6 阿里云远程服务器 Good judgment comes from experience, and a lot of that comes from bad jud…

ESXI 6.7全面系统教程~汇总

ESXI 6.7全面系统教程 许可证:0A65P-00HD0-375M1-M097M-22P7H esxi 是一个脱机系统,也是一个虚拟机系统与vmware 相比,它可以直接运行在硬件上,这样可以减少资源浪费,一般用于服务器上;下面是esxi 的完整…

PasteSpider之服务器介绍

在PasteSpider中服务器作为重要的一个对象,编译,构建,执行等都是服务器在执行,所以如何新建和服务器的各项属性介绍尤为重要! 在菜单基础信息 服务器 点击 新增 按钮,可以看到如下图 我们从上面开始往下介…

SSR在天猫优品大促会场的探索实践

BBC 发现其网站加载时间每增加一秒,用户便会流失 10%。为提高页面的秒开率,我们不断探索着优化策略,仅仅在浏览器领域下的优化已经满足不了我们的极致要求,开始往服务端方向不断探索。本文将讨论业务接入SSR的几个问题&#xff1a…

《3-链表》

链表 引言: 存储数组需要内存空间连续,当我们需要申请一个很大的数组时,系统不一定存在这么大的连续内存空间。 而链表则更加灵活,不需要内存是连续的,只要剩余内存空间大小够用即可 1.定义 : 「链表 Lin…

设计模式-结构型模式之装饰模式

3. 装饰模式3.1. 模式动机一般有两种方式可以实现给一个类或对象增加行为:继承机制使用继承机制是给现有类添加功能的一种有效途径,通过继承一个现有类可以使得子类在拥有自身方法的同时还拥有父类的方法。但是这种方法是静态的,用户不能控制…

CSS基础——盒子模型

目录 简介 盒子模型组成 内容区 内边距 边框 border-width border-color border-style border 外边距 负值 auto 简写属性 垂直外边距的重叠 浏览器默认设置 内联元素的盒子 简介 在网页中,一切都是可以看作为“盒子”。 在css处理网页的时候&…

音游判定原理详解——从触摸屏幕到判定音符【Project SEKAI攻略】

“音乐游戏”一般简称为“音游”,玩家需要配合音乐的节奏来进行一定的动作。 《Project SEKAI》作为一个“移动端音游”,绝大多数玩家会使用手机、平板电脑等移动设备的触摸屏进行游玩,也有极少数的玩家不按常理出牌,使用手台、键…

英国站亚马逊纽扣电池标准

英国标准协会(BSI)于2021年4月30日发布了纽扣(非锂)和纽扣(锂)电池的国家标准PAS 7055:2021。 该标准是根据2005年通用产品安全法规的规定制定的(GPSR) 并关注投放到英国市场的产品的安全性。 PAS 7055:202…

数据库实验 | 第1关:建立和调用存储过程(不带输出参数的存储过程)

任务描述 本关任务: 该实验是针对数据表jdxx,该数据表有四个字段,分别是省份(sf)、城市(cs)、区县(qxmc)、街道(name)。 例如,查询天心区(qxmc)的所有字段的值结果如图所示 任务要求 建立存储过程 dqxx(in city varchar(10),i…

6.S081——虚拟内存部分——xv6源码完全解析系列(4)

0.briefly speaking 点击跳转到上一篇博客 好,现在进入下一个话题,就是物理内存分配器(kernel/kalloc.c)。在简单介绍完内核态的物理内存分配器之后,之后简单带过一下两个头文件riscv.h和memorylayout.h这两个头文件,因为它们都…

.Net Core从零学习搭建权限管理系统 - 课程简介

课程简介目录 🚀前言一、课程背景二、课程目的三、系统功能四、系统技术架构五、课程特点六、课程适合人员七、课程规划的章节八、最后 🚀前言 本文是《.Net Core从零学习搭建权限管理系统》教程专栏的导航站(点击链接,跳转到专栏…

(1条消息) CodeForces 1278 B.A and B(Math)

题目如下: 题解 or 思路 首先我们需要知道: 对于: s u m 1 2 3 4 . . . n sum 1 2 3 4 ... n sum1234...n s u m a b , ( a ∈ [ 0 , s u m ] ) sum a b, (a \in [0, sum]) sumab,(a∈[0,sum]) 这个在此就不再证明 于是我…

vcpkg添加自定义包安装

文章目录 前言新建overlay-ports编写baseline.json编写openssl.json编写配置修改vcpkg.json修改portfile.cmake 挂载安装后话 前言 vcpkg收集了很多C的包,可总是会有没收录进去的,以openssl 3.0.0版本举例,这个版本vcpkg没有收录进去&#x…