【Java基础教程】Java数据类型_java带小数点的数据类型-程序员宅基地

技术标签: Java  数据类型  

作者简介:大家好我是hacker707,大家可以叫我hacker,新星计划第三季python赛道Top1
个人主页:hacker707的csdn博客
系列专栏:Java基础教程
推荐一款模拟面试、刷题神器点击跳转进入网站

在这里插入图片描述

基础数据类型

整数类型

Java语言是强类型语言,对于每一种数据都定义了明确的具体的数据类型,在内存中分配了不同大小的内存空间。
整型常量
整型常量有三种表达形式:十进制、八进制、十六进制
十进制数:由0~9组成,但不能以0开头。例如23,100
八进制数:由0~7组成,且以0开头。例如027,015
十六进制数:由0~ 9和A~ F组成,且以0x开头。例如0x2C,0x3B
Java中有四种整数类型,分别是byte、short、int、long

整数类型 占用字节数 数据位 表示范围
byte 1 8位 -128~127
short 2 16位 -32268~32767
int 4 32位 -2147483648~2147483647
long 8 64位 -2的63次方~2的63次方-1
public class User {
    
    public static void main(String[] args) {
    
    int a = 1;
    System.out.println(a);
    }
}
1

浮点数类型

浮点型常量是可以带小数点的数据类型,有两种表示形式:小数点形式、指数形式
小数点形式:由整数部分,小数点和小数部分组成。例如2.34,12.76
浮点型数据可以分为单精度浮点数(float)和双精度浮点数(double)

浮点数类型 占用字节数 数据位 范围
float 4 32位 -3.4e38~3.4e38
double 8 64位 -1.7e308~1.7e308
public class User {
    
    public static void main(String[] args) {
    
    float a = 1;
    System.out.println(a);
    }
}
1.0

字符类型

在Java中,字符常量是用单引号括起来恩典单个字符,如’a’,‘B’,‘1’
在Java语言中,还存在一种特殊的字符常量,称为转义字符。它是以\开头的字符序列。
常见转义字符如下表所示

转义字符 含义
\r 回车
\n 换行
\t 水平制表符(相当于tab,缩进)
\b 退格符(Backspace)
\f 换页符

布尔型

布尔型常量只有两个值:true(真)和false(假)

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

字符串类型

字符串类型是用双引号括起来的由一个或多个字符构成的序列

public class User {
    
    public static void main(String[] args) {
    
    String a = "hello Java world";
    System.out.println(a);
    }
}
hello Java world

引用数据类型

引用数据类型是建立在八大基本数据类型基础之上,包括数组接口。引用数据类型是由用户自定义,用来限制其他数据类型。简单的说,除八大基本类型之外的所有数据类型,都为引用数据类型。
所有引用类型的默认值都为 null

数据类型转换

数据范围从小到大

byte < char,short< int < long < float < double

自动类型转换

把一个表示数据范围的数值或者变量赋值给另一个表示范围的变量
例如:double a = 10

public class User {
    
    public static void main(String[] args) {
    
        // 自动类型转换
        double a = 10;
        System.out.println(a); // 10.0
    }
}
强制类型转换

把一个表示数据范围的数值或者变量赋值给另一个表示范围的变量
例如:int h = (int)77.77;

如果直接double转换int会报错
在这里插入图片描述
这时需要强制类型转换为int类型(不建议使用,使用会有损耗)

public class User {
    
    public static void main(String[] args) {
    
        // 强制类型转换
        int h = (int) 77.77;
        System.out.println(h); // 77
    }
}

结束语

推荐一款模拟面试、刷题神器网站
点击跳转进入网站
1、算法篇(398题):面试必刷100题、算法入门、面试高频榜单
2、SQL篇(82题):快速入门、SQL必知必会、SQL进阶挑战、面试真题
3、大厂笔试真题:字节跳动、美团、百度、腾讯…

在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xqe777/article/details/123929173

智能推荐

QT报错:C2131:表达式的计算结果不是常数_qt表达式的计算结果不是常数-程序员宅基地

文章浏览阅读630次,点赞10次,收藏10次。如果确定代码没有问题那么可以试一下下面的解决方案:下载:找到QT安装路径的QTCore目录下:用刚下载的文件替换注意:以上方法只对QT5.10版本有用。_qt表达式的计算结果不是常数

闪客工具:基于Flash 3D API Molehill 进行GPU加速2D的引擎_as3 molehill 键控-程序员宅基地

文章浏览阅读2k次。闪客工具:基于Flash 3D API Molehill 进行GPU加速2D的引擎_as3 molehill 键控

腾讯云与阿里云的对比_漏洞扫描 阿里云 腾讯云 对比-程序员宅基地

文章浏览阅读1.3k次。经过几年的发展腾讯云已经逐渐完善,与阿里云的差距在逐渐缩小中。个人实践中两者之间的服务器性能上已经非常接近了,程序员又多了一个服务器供应商的选择了..._漏洞扫描 阿里云 腾讯云 对比

spring data jpa 定义全局接口BaseDao_spring jpa base dao-程序员宅基地

文章浏览阅读1.4w次,点赞2次,收藏6次。好,现在我要搭一个项目,我想定义一个BaseDao,然后直接让其他模块的dao直接继承我这个BaseDao,BaseDao有通用的方法也有spring data jpa提供的便捷方法那就新建一个BaseDao呗,这个BaseDao应该是继承JpaRepository,JpaSpecificationExecutor因为我们想用spring data jpa,然后你再定义自己一些常用方法,例如myM_spring jpa base dao

Cadence CIS 器件管理平台解决方案_eda设计元器件管理系统-程序员宅基地

文章浏览阅读4.5k次,点赞3次,收藏31次。CIS 器件管理平台解决方案一、 概要CIS业界应用最广泛的原理图设计工具,在Cadence公司产Allegro Design Entry CIS /Allegro PCB Design CIS L /XL / GXL都包含有CIS器件管理平台。此平台可以科学管理与积累企业的智力资源,并能提高研发团队的效率以及规范性、整合企业 ERP/PDM系统优化研发流程。下图为CIS设计流程..._eda设计元器件管理系统

探索《实用Python与OpenCV》项目:强大的图像处理和计算机视觉教程-程序员宅基地

文章浏览阅读344次,点赞4次,收藏4次。探索《实用Python与OpenCV》项目:强大的图像处理和计算机视觉教程项目地址:https://gitcode.com/willard-yuan/practical-python-and-opencv项目简介《实用Python与OpenCV》 是一个开源项目,旨在通过一系列精心设计的实例,帮助开发者和爱好者学习如何使用Python和OpenCV进行图像处理和计算机视觉应用。该项目由Wil...

随便推点

ModuleNotFoundError: No module named xxx 快速解决方法-程序员宅基地

文章浏览阅读1.1w次。原因1:没有对应的安装包解决方案:pip install 安装包名安装速度慢的话,切换源:pip切换源原因2:找不到对应的自定义文件路径解决方案:在py文件中指定自定义文件的路径import syssys.path.append('..') #这条命令是用来添加上层目录的如果不只是多层目录的调用,可以根据sys.path[0],添加自定义文件的绝对路径添加方式:print(sys.path[0])sys.path.append(sys.path[0]+文件剩余的路径) 举例:如果你_modulenotfounderror: no module named

2021-11-07 MyBatisPlus分页失败错误原因_mybatis 分页失败-程序员宅基地

文章浏览阅读326次。MyBatisPlus分页失败错误原因分析:运行之后查询到的结果是所有表里的内容,并且总数为零解决办法1、配置文件配未生效,检查配置文件2、将配置插件的代码放在SpringBoot的启动类中@MapperScan("com.mp.mapper")public class MybatisApplication { public static void main(String[] args) { SpringApplication.run(MybatisApplicatio_mybatis 分页失败

element UI el-dialog校验规则点击取消之后还是会出现提示信息_el-dialog打开后,里面的el-input输入框点击校验出现校验规则,点击取消关闭后,再点-程序员宅基地

文章浏览阅读770次。1、vue element UI el-dialog 如何监听右上角 x 关闭按钮<el-dialog :before-close="handleDialogClose"></el-dialog> methods: { /** * 点击 X 关闭对话框的回调 **/ handleDialogClose() { }}2、点击弹框“取消”,清除校验规则html部分:<el-form ref="ruefs"_el-dialog打开后,里面的el-input输入框点击校验出现校验规则,点击取消关闭后,再点

嵌入式实时操作系统介绍及其STM32实践_stm32是实时系统么-程序员宅基地

文章浏览阅读274次。特点实时操作系统 (RTOS) 用于开发在严格时间线内响应事件的系统首先介绍了 RTOS 的概念,并比较了一些其他实现实时性能的替代方法了解了任务、队列、互斥体和信号量等基本原理,以及微控制器选型和开发环境选择使用 STM32F7 Nucleo 板、STM32CubeIDE 和 SEGGER 调试工具(包括 SEGGER J-Link、Ozone 和 SystemView)的示例,了解抢占式调度策略和任务通信内容介绍和 RTOS 概念介绍实时系统了解 RTOS 任务任务信号和通信机制_stm32是实时系统么

java wed的工作流程_java wed 教程-程序员宅基地

文章浏览阅读450次。java wed笔记 java wed的工作流程首先我们来介绍它的三个核心:URL,Http,HtmlURL:也就是网址了HTTP(超文本传送协议):它是一座桥梁,建立在客户与服务端之间的桥梁,所有的数据访问都要通过它来传达。HTML(超文本标记语言):也就是我们用来写页面的语言,它负责告诉浏览器向用户显示内容。工作流程:用户点击RUL(网址时)——> http接到请求说这..._java wed 教程

SFT会改善LLM性能,RLHF可能会损害性能_rlhf和sft有什么区别-程序员宅基地

文章浏览阅读683次,点赞8次,收藏7次。领域自适应:预训练的语言模型通常在大规模通用语料库上进行训练,而SFT可以通过在特定领域的数据上微调模型,使其更好地适应该领域的特定模式、术语和上下文。人类反馈的限制:RLHF依赖于人类提供的反馈信号来指导模型的学习。SFT(Structured Fine-Tuning)是一种模型优化技术,它通过在预训练的语言模型上进行有针对性的微调,以适应特定任务或领域。数据增强:SFT通常会使用特定任务或领域的数据来微调模型,这种数据增强可以丰富模型的训练数据,提供更多的样本和多样性,有助于改善模型的泛化能力和性能。_rlhf和sft有什么区别