当前位置: 首页 > news >正文

java语法基础--基本数据类型

一、数据类型概括

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IPCRT0Cu-1690460076912)(002-基本数据类型.assets/image-20210805152442092.png)]

1、整数类型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-80NyWa4A-1690460076913)(002-基本数据类型.assets/image-20210805152604557.png)]

2、浮点型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MtFHAR9k-1690460076914)(002-基本数据类型.assets/image-20210805152809312.png)]

3、布尔类型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tz3rDlzM-1690460076914)(002-基本数据类型.assets/image-20210805152852454.png)]

4、字符类型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LLZZgCeJ-1690460076915)(002-基本数据类型.assets/image-20210805152918929.png)]

二、数据类型的使用

1、整数类型的使用

超出类型范围

    //1.1 定义一个byte类型的变量,并且设置它超过byte类型范围// 如果定义的数值在byte类型范围内,那么就能正常使用,// 如果超出的话,就会默认为int类型,会报错类型不匹配,编译不通过,//解决方法就是在 前面加上(130)// byte a=(byte)129;  //  -127 不是129 是溢出的结果byte a=(byte)130;  //   -126System.out.println(a);

两个byte变量算术运算

        //1.2 定义2个byte类型的变量,然后让他们进行算术运算byte b=1;byte c=2;// byte d=b+c;// 会报错 原因是运算结果都会默认是偏大类型,加上强转就好了byte d= (byte) (b+c);System.out.println(d);

int 范围

        //1.3 int的取值范围 10个//int e= 10000000000; //右边的数字超出了int类型的范围long f = 10000000000l;//右边数字虽然没有超出long,但是如果不加依然还是会报错,因为右边的数字默认都是int类型

八进制和十六进制

        //1.4 使用八进制和十六进制来写int a1 =100;int a2=07076; //以0开头都是八进制int a3=0x12312; //以0x开头都是16进制

2、浮点型

        //2.1 float 和double 的取值范围// float 精确到小数点后7位float f1=0.1234567f;//注意要加f//double 精确到小数点16位double d1=0.1234567890123456;System.out.println(f1);System.out.println(d1);//2.2 浮点型不易出现在精度高的算术运算中,原因是double d2 = 3;double d3 = 2.9;System.out.println(d2-d3);//使用BigDecmial  还是有问题未解决double result=Arith.sub(d2,d3);

3、字符型

   //3.1 三种展示形式:字符char c1 = '中';char c2 = 97;char c3 = '\u4e2d';System.out.println(c2+","+c3);

4、转义字符

转义字符描述
\n换行符
\t缩进
\\反斜线
\’单引号
\"双引号

三、类型的转换

1、自动转换

把小类型的数据转成大类型的数据,就可以自动转换

package demo;
public class TestAutoConvert {
public static void main(String[] args) {short s = 123;int i=s;}//自动转换成功,编译通过
}

2、强制转换

把大类型的数据转成小类型的数据,有可能会造成数据溢出,所以需要强制转换;
转换的方式就是在数据前面使用小括号,小括号里面写明你要转换的类型即可;

package demo;
public class TestAutoConvert {
public static void main(String[] args) {short s = 123;byte i=(byte)s;}//自动转换成功,编译通过
}

2.1、同类型转换 (整型的某个类型转成整型中的另外一个类型)

长度足够

int i=100; 
byte b = (byte)j;//b= 100

整数长度不够,数据截断

int i= 10000; 
byte b = (byte)j; //b= 16

2.2、不同类型的转换

浮点型转为整型

//➢不同类型的转换
//●浮点型转为整型,小数点舍去double d=2.5;
int i= (int)d;//i=2

2.3、整数转字符

//➢整型转字符
int a= 65;
char c= (char)a;
//c='a';
http://www.lryc.cn/news/97873.html

相关文章:

  • uniapp 微信小程序 预览pdf方法
  • 基于vue+uniapp微信小程序公司企业后勤服务(设备)系统
  • Linux命令(54)之blkid
  • Kotlin多平台最佳架构指南
  • 【Vue3】父子组件传参
  • 简单上手FineBI
  • 066、故障处理之热点问题
  • C/C++常用宏归纳
  • 在Windows 10/11 上安装GNS3模拟器
  • React Route5 路由
  • 海尔设计借助亚马逊云科技生成式AI,实现端到端的云上工业设计解决方案
  • python数据结构和字符串用法
  • ext4 - mballoc块分配机制
  • Spring整合junit
  • Swift 让ScrollView滚动到具体某个位置
  • 【C语言day08】
  • 【并发编程】ThreadLocal
  • 如何提高自己的软件测试水平之bug定位
  • 发点实用的快捷键(mac
  • Android播放多媒体文件——播放音频
  • 存储重启后,ceph挂载信息没了,手动定位osd序号并挂载到对应磁盘操作流程、ceph查看不到osd信息处理方法
  • Linux学习之循环处理位置参数
  • NLP实战8:图解 Transformer笔记
  • Pytorch个人学习记录总结 玩俄罗斯方块の深度学习小项目
  • PuTTY连接服务器报错Connection refused
  • 11-3_Qt 5.9 C++开发指南_QSqlQuery的使用(QSqlQuery 是能执行任意 SQL 语句的类)
  • 神码ai火车头伪原创插件怎么用【php源码】
  • 13.Netty源码之Netty中的类与API
  • C# 如何检查数组列表中是否存在数组
  • AI课堂教学质量评估系统算法 yolov7