【java的类型数据】——八大类型数据

文章目录

  • 前言
  • 字面常量
    • 字面常量的分类:
  • 数据类型和变量
  • 变量的包装类和范围
    • 范围
    • 整型变量
      • byte
      • int
      • short
      • long
    • 浮点型变量
      • 双精度浮点型double
      • 单精度浮点型float
    • 字符型变量
    • char
    • 布尔型变量 boolean
  • 类型转换
    • 自动类型转换(隐式)
    • 强制类型转换(显式)(不建议)
  • 运算中的类型提升
  • 总结


前言


字面常量

字面常量就是在程序运行期间,固定不变的量。

字面常量的分类:

1.字符串常量:括号括起来的,比如”12345”、“hello”、 “你好”
2.整形常量:程序中直接写的数字(注意没有小数点),比如: 100、1000
3.浮点数常量:程序中直接写的小数,比如: 3.14、 0.49
4.字符常量:由单引号括起来的当个字符,比如: ‘A’、‘1’
5.布尔常量:只有两种:true和false
6.空常量: nul

在这里插入图片描述
以上框起来的都是字面常量。

数据类型和变量

在这里插入图片描述

注意:
在java,不管是在32位系统还是在64位系统上,int都占4个字节,long都占8个字节

特点是:可移植性、跨平台

注意:
整型和浮点型都是带有符号的

在这里插入图片描述

变量的包装类和范围

范围

在这里插入图片描述

注意:
局部变量要初始化,否则报错
在这里插入图片描述

正确写法如下:
要明确写出b的值是多少
在这里插入图片描述


整型变量

byte

大小:一个字节
包装类:Byte

class Test{public static void main(String[] args) {byte b=77;System.out.println(b);System.out.println(Byte.MAX_VALUE);System.out.println(Byte.MIN_VALUE);}
}

在这里插入图片描述

int

大小:4个字节
包装类:Integer

class Test{public static void main(String[] args) {System.out.println(Integer.MAX_VALUE);System.out.println(Integer.MIN_VALUE);}
}

注意:给字面值常量赋值的时候,不要超过变量所能表示的范围,一旦超过会报错

在这里插入图片描述


short

大小:2个字节
包装类:Short

class Test{public static void main(String[] args) {short a=7;System.out.println(a);System.out.println(Short.MAX_VALUE);System.out.println(Short.MIN_VALUE);}

long

大小:8个字节
包装类:Long

长整型变量的初始值后要加L,最好不要写l,容易看成1

在这里插入图片描述
在这里插入图片描述

浮点型变量

双精度浮点型double

大小:8个字节
1.
int型除以int型的值不会是小数的(int会自动省略小数)
在这里插入图片描述

如果要得到小数,要用double型
在这里插入图片描述
或者这样:
在这里插入图片描述

小数没有一个非常精确的数字,小数点后面也许会有几个甚至几十个小数位
在这里插入图片描述

注意事项:

在这里插入图片描述

单精度浮点型float

大小:4个字节
和double不一样的地方:flaot的值后面要加f,表示它是单精度浮点型,是4个字节。
在这里插入图片描述

字符型变量

char

大小:2个字节

在java中,char是2个字节,汉字其实是2个字节,所以char能存放汉字。

class Test{public static void main(String[] args) {char a='A';char b='吴';System.out.println(a);System.out.println(b);}
}

总结:
java中使用单引号引起单个字母的形式表示字符字面值。
c语言使用ASCII码值表示字符,而java使用Unicode表示字符,因此字符大小是两个字节。java能表示的字符种类更多。

布尔型变量 boolean

大小:没有明确规定多大

注意事项:
在这里插入图片描述

class Test{public static void main(String[] args) {boolean flg =true;System.out.println(flg);}
}

在这里插入图片描述

boolean的包装类是Boolean

类型转换

自动类型转换(隐式)

当数据范围小的赋值给数据范围大的时,范围小的类型会自动转变成范围大的类型。
在这里插入图片描述
在这里插入图片描述

总结:

  1. 字节小的能赋值给字节大的,并且会自动转换成那个字节大的类型。
  2. 字节大的不能赋值给字节小的,大碗水倒进小碗水里会溢出,在这里也就是会导致数据丢失。(不安全!)

强制类型转换(显式)(不建议)

字节大的赋值给字节小的也是有办法的,
就是在把字节大的强制类型转换成字节小的。
但这个办法有点冒险
会导致数据丢失。

在这里插入图片描述
boolean型不能转换成别的类型。

注意事项:
在这里插入图片描述

运算中的类型提升

小类型和大类型相加,要用那个大类型接收相加的结果
int型和long型相加,int会提升为long型,所以要用long接收相加的结果

class Test{public static void main(String[] args) {int a =10;long b=100L;long c=a+b;System.out.println(c);}
}

小于4个字节的类型相加,在运算的过程中会提升为4个字节,所以要用int类型接收相加的结果

byte型和byte型相加

class Test{public static void main(String[] args) {byte f =10;byte f2=100;int f3=f+f2System.out.println(f3);}
}

总结

以上就是关于类型数据的内容,写了一遍印象更深刻了。

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

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

相关文章

一个字符驱动示例 -- 微秒级别周期 反转GPIO

仅作为自我记录的一个demo 本次GPIO以微妙级别频率的反转实验有以下几个启示: 一开始在应用层做延时,来实现2微妙周期,占空比50%的GPIO反转,发现波形的频率一直上不去,只能在25hz徘徊,后来索性去掉延时&am…

flink写入到kafka 大坑解析。

1.kafka能不能发送null消息? 能! 2 flink能不能发送null消息到kafka? 不能! public static void main(String[] args) throws Exception {StreamExecutionEnvironment env StreamExecutionEnvironment.getExecutionEnvironment(…

JavaWeb+jsp+Tomcat的叮当书城项目

点击以下链接获取源码: https://download.csdn.net/download/qq_64505944/88123111?spm1001.2014.3001.5503 技术:ssm jsp JDK1.8 MySQL5.7 Tomcat8.3 源码数据库课程设计 功能:管理员与普通用户和超级管理员三个角色,管理员可…

浅谈 Spring AOP 思想

Spring AOP AOP 切面编程普通代理类JDK动态代理Cglib动态代理AOPAOP术语AOP切面编程的优势Advice通知类型(5种)通知的执行顺序 Order切入点表达式表达式execution注解annotation Spring事务管理Transactional 及 Transactional 的两个属性Transactional …

常用直线模组的类型

目前,直线模组的应用非常广泛,而且直线模组的种类也有很多可以满足每个行业的应用要求,那么常见的直线模组类型有哪些,大家知道吗? 1、全封闭滚珠丝杆直线模组: 在半封闭式的基础上增加了不锈钢带防尘结构…

[Angular] Import TranslateModule in Angular 16

1.Background Angular 更新至V16版后,支援 standalone,故移除了 NgModule,而TranslateModule 又要在AppModule中 import,那该如何做呢? 2.NPM packages installation npm install ngx-translate/core npm install n…

BUUCTF——reverse3 适合新手的关于base64加密算法代码的分析

作为一个逆向小白,学了点加密算法就来BUU找点乐子,前7题蛮简单的,然后做到了reverse3,典型的base64加密算法,让我折腾了好久,写篇博客记录一下 顺便说下很多博客并没有对这里的加密算法进行代码上的分析&a…

分享VMware Workstation Pro ESXI7创建虚拟机和配置硬盘空间(分享自己的学习历程意在帮助有需要的小伙伴)

背景:因公司项目需求改用VMware Workstation Pro,已经使用1个月目前除了中途出现过一次问题被解决后一直稳定运行至今, 1:这里贴出拿出现的问题提示及解决方法的链接:解决vmWare ESXI 7.3报错; 2:如果你是第一次接触VMware Work…

Echarts 文字太长用省略号代替

xAxis: [{type: category,data: [materialUserEchartsDate.value[0] ? materialUserEchartsDate.value[0].name : ,materialUserEchartsDate.value[1] ? materialUserEchartsDate.value[1].name : ,materialUserEchartsDate.value[2] ? materialUserEchartsDate.value[2].na…

二、前端高德地图、渲染标记(Marker)引入自定义icon,手动设置zoom

要实现这个效果,我们先看一下目前的页面展示: 左边有一个图例,我们可以方法缩小地图,右边是动态的marker标记,到时候肯定时候是后端将对应的颜色标识、文字展示、坐标点给咱们返回、我们肯定可以拿到一个list&#xf…

【广州华锐互动】无人值守变电站AR虚拟测控平台

无人值守变电站AR虚拟测控平台是一种基于增强现实技术的电力设备巡检系统,它可以利用增强现实技术将虚拟信息叠加在真实场景中,帮助巡检人员更加高效地完成巡检任务。这种系统的出现,不仅提高了巡检效率和准确性,还降低了巡检成本…

企业级敏捷转型探索与实践︱极狐Gitlab战略运营部PMO郝韫

极狐Gitlab战略运营部PMO郝韫先生受邀为由PMO评论主办的2023第十二届中国PMO大会演讲嘉宾,演讲议题:企业级敏捷转型探索与实践。大会将于8月12-13日在北京举办,敬请关注! 议题简要: 打造持续创新、快速成长的敏捷组织…

python调用百度ai将图片/pdf识别为表格excel

python调用百度ai将图片识别为表格excel 表格文字识别(异步接口)图片转excel 表格文字识别V2图片/pdf转excel通用 表格文字识别(异步接口) 图片转excel 百度ai官方文档:https://ai.baidu.com/ai-doc/OCR/Ik3h7y238 使用的是表格文字识别(异步接口),同步…

【C#】微软的Roslyn 是个啥?

一、说明 Roslyn 是微软重写的C#编译器并开源。 Roslyn 是 C# 和 Visual Basic.NET 开源编译器的代号。以下是它如何在过去十年企业Microsoft的最黑暗中开始,并成为所有C#(和VB)的开源,跨平台,公共语言引擎&#xff0c…

springboot+mybatis-plus+vue+element+vant2实现短视频网站,模拟西瓜视频移动端

目录 一、前言 二、管理后台 1.登录 2.登录成功,进入欢迎页 ​编辑 3.视频分类管理 4. 视频标签管理 5.视频管理 6.评论管理 ​编辑 7.用户管理 8.字典管理 (类似于后端的枚举) 9.参数管理(富文本录入) 10.管…

Docker容器监控之 CAdvisor+InfluxDB+Granfana

通过docker stats命令可以很方便的看到当前宿主机上所有容器的CPU,内存以及网络流量等数据,一般小公司够用了。但是,docker stats统计结果只能是当前宿主机的全部容器,数据资料是实时的,没有地方存储、没有健康指标过线预警等功能…

VMware搭建Hadoop集群 for Windows(完整详细,实测可用)

目录 一、VMware 虚拟机安装 (1)虚拟机创建及配置 (2)创建工作文件夹 二、克隆虚拟机 三、配置虚拟机的网络 (1)虚拟网络配置 (2)配置虚拟机 主机名 (3&#xf…

(树) 剑指 Offer 26. 树的子结构 ——【Leetcode每日一题】

❓剑指 Offer 26. 树的子结构 难度:中等 输入两棵二叉树 A 和 B,判断 B 是不是 A 的子结构。(约定空树不是任意一个树的子结构) B 是 A 的子结构, 即 A 中有出现和B相同的结构和节点值。 例如: 给定的树 A: 3/ \4 5/ \1 2给定的树 B&…

stable-diffusion-webui汉化教程

第一种方法 1.打开stable diffusion webui,进入"Extensions"选项卡 2.点击"Install from URL" 3、注意"URL for extension’s git repository"下方的输入框 4、填入地址:https://github.com/VinsonLaro/stable-diffus…

C++多线程编程(包含c++20内容)

C多线程编程(包含c20内容) 文章目录 C多线程编程(包含c20内容)线程通过函数指针创建线程通过函数对象创建线程通过lambda创建线程通过成员函数创建线程线程本地存储取消线程自动join线程从线程获得结果 原子操作库原子操作原子智能指针原子引用使用原子类型等待原子变量 互斥互…