Java的数据类型

JavaScript中进行byte的计算(含java及js查表法生成crc的代码) 网络资源的整合,以及自己摸索使用JavaScript进行byte计算的路,包括详细的文档,范例代码(java和js按算法crc16生成crc码),为下载其中资源,花费若干分,所以设定了下载分。谢谢大家! 立即下载

Java的数据类型包含基础数据类型、引用数据类型两大类。
这里写图片描述

一、四大类八个基础数据类型

Java语言提供了八种基本类型。四种数字类型(四个整数型(默认是int 型),两个浮点型(默认是double 型)),一种字符类型,还有一种布尔型。

1、byte:

byte数据类型是8位、有符号的,以二进制补码表示的整数,占1字节。取值区间-128(-2^7)~127(2^7-1)),默认值是0,对应的Java引用类型是java.lang.Byte。
byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一。
例子:byte a = 100,byte b = -50。

2、short:

short数据类型是16位、有符号的以二进制补码表示的整数,占2字节。取值范围-32768(-2^15)~32767(2^15 - 1),默认值是0,对应的Java引用数据类型java.lang.Short。
short数据类型也可以像byte那样节省空间。一个short变量是int型变量所占空间的二分之一。
例子:
short s = 1000,short r = -20000。
short s = 1;s+=1;(正确,s+=1 ==> s=(short)(s+1))
short s = 1;s =s+1;(错误,s+1会被强制转换为int类型,而s是一个short类型,故错误)

3、int:

int数据类型是32位、有符号的以二进制补码表示的整数,占4字节,取值范围-2,147,483,648(-2^31)~2,147,485,647(2^31 - 1),整型变量默认为int类型,默认值是0,对应的Java引用数据类型java.lang.Integer。
例子:int a = 100000, int b = -200000。

4、long:

long数据类型是64位、有符号的以二进制补码表示的整数,占8字节,取值范围-9,223,372,036,854,775,808(-2^63)~9,223,372,036,854,775,807(2^63 -1),这种类型主要使用在需要比较大整数的系统上,默认值是0L,对应的Java引用类型java.lang.Long。
例子:
long a = 100000L,int b = -200000L。
long a=111111111111111111111111(错误,整数型变量默认是int型)
long a=111111111111111111111111L(正确,强制转换)

5、float:

float数据类型是单精度、32位、符合IEEE 754标准的浮点数,占4字节,取值范围1.40129846432481707E-45f ~ 3.40282346638528860E38f,浮点数是有舍入误差的,float在储存大型浮点数组的时候可节省内存空间,默认值是0.0f,对应的Java引用类型java.lang.Float。
例子:
float f1 = 234.5f。
float f=6.26(错误 浮点数默认类型是double类型)
float f=6.26F(转换正确,强制)

6、double

double数据类型是双精度、64位、符合IEEE 754标准的浮点数,占8字节,
浮点数的默认类型为double类型,取值范围 4.9E-324 ~ 1.7976931348623157E+308 ,默认值是0.0,对应的Java引用类型java.lang.Double
例子:
double d1 = 123.4。
float f=6.26(错误 浮点数默认类型是double类型)

7、boolean:

boolean数据类型表示一位的信息,只有两个取值:true和false,这种类型只作为一种标志来记录true/false情况,默认值是false,对应的Java引用类型java.lang.Boolean
例子:boolean one = true。

8、char:

char类型是一个单一的16位Unicode字符,用 ‘ ’表示一个字符。java 内部使用Unicode字符集。他有一些转义字符 ,占2字节,取值范‘\u0000’~’\uffff’,默认值’/u0000‘,对应的Java引用类型java.lang.Character
例子:
char a = ‘a’;

二、引用数据类型

引用数据类型主要包含class、interface、数组等等。

引用数据类型和基础数据类型的区别:

基础数据类型保存在栈中,保存的是实际值,引用数据类型也保存在栈中,保存的是一个实际对象地址,将具体的内容保存在堆中;它们占用空间大小和存取速度不同;当引用类型和原始类型用作某个类的实例数据时所指定的缺省值,对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关;当传递方法参数类型为引用数据类型时,一个方法将修改一个引用数据类型的参数所指向对象的值,当传递方法参数类型为基本数据类型(数字以及布尔值)时,一个方法是不可能修改一个基本数据类型的参数。

三、案例

public class JavaLearnOne {
    public static void main(String args[]) {
        int a = 1;
        JavaLearnOne one = new JavaLearnOne();
        one.changeParamsA(a);
        System.out.println("main:" + a);
        CallValue callValue = new CallValue();
        callValue.setA(10);
        System.out.println("callValue:" + callValue.getA());
        one.updateCallValue(callValue);
        System.out.println("callValue update:" + callValue.getA());
    }

    public void updateCallValue(CallValue value) {
        value.setA(1000);
    }

    public void changeParamsA(int a) {
        a = 1000;
    }
}

class CallValue {
    private int a;

    public void setA(int a) {
        this.a = a;
    }

    public int getA() {
        return this.a;
    }
}

以上输出结果:
main:1
callValue:10
callValue update:1000

说明:
当传递方法参数类型为基本数据类型(数字以及布尔值)时,一个方法是不可能修改一个基本数据类型的参数(传递的是值副本),因此在changeParamsA中修改的只是参数值的副本,java程序设计语言是采用了按值调用,即call by value。也就是说方法得到的是所有参数值的一个拷贝,方法并不能修改传递给它的任何参数变量的内容。

当传递方法参数类型为引用数据类型时,一个方法将修改一个引用数据类型的参数所指向对象的值。案例中的执行过程:
1、对象执行updateCallValue方法时,value被初始化为callValue的拷贝
2、调用value的setA方法是,value和callValue的CallValue对象同时被修改。
3、方法结束后,value将不会再使用,被释放,而callValue继续使用,没有变化,依然指向CallValue对象。

如何适配自定义激光雷达数据到LIO-SAM:解决ring和time参数缺失问题 本文详细解析了如何将非标准激光雷达(如速腾、Livox)适配到LIO-SAM框架中,重点解决ring和time参数缺失问题。提供了从源码修改到通用适配中间件的多层级解决方案,并包含实机测试与性能调优指南,帮助开发者高效完成雷达数据适配。 阅读详情

相关推荐

ESP8266+ITR8307实战:如何用反射式光电管实现5cm远距离检测(附避坑指南)

本文详细介绍了如何利用ESP8266的ADC功能与ITR8307反射式光电管,通过调制解调、硬件电路优化及软件同步采样策略,实现5cm稳定远距离检测。文章提供了完整的硬件设计、代码实现与调优避坑指南,有效解决了环境光干扰与信号衰减难题,适用于智能车、自动化等需要可靠非接触检测的项目。

rgv234567的博客 264

在接口传参时,前端的数据类型对应后端的数据类型

C#里int是有大小的, 默认的int最大是20亿多, 有时候用不着这么大的数字, 就发明了小整数, 从小到大分别是byte short int long, 其中, 默认的是带符号的, 就是可正可负, 如果前面加上u, 就代表无符号的, 就是正数, 如果是u开头的, 因为没有负数部分, 所以正数部分可以是原来的两倍大小 Sbyte:代表有符号的8位整数,数值范围从-128 ~ 127 Byte:代表无符号的8位整数,数值范围从0~255 Short:代表有符号的16位整数,范围从-32768 ~ 32767

tangxiaobao2016的博客 3395

手把手教你用芯驰X9HP驱动MAX96755/MAX96752点亮智能座舱仪表屏(附完整寄存器配置表)

本文详细介绍了如何使用芯驰X9HP驱动MAX96755/MAX96752实现智能座舱仪表屏的完整开发流程,包括硬件架构解析、关键寄存器配置、Linux BSP集成及调试技巧。通过实战指南和完整寄存器配置表,帮助开发者快速掌握驱动开发核心技术,提升智能座舱系统的显示性能与稳定性。

weixin_30879169的博客 526

前端对字节数组的处理及转换

关于前端对字节数组的处理及转换

ReferenceError: brief introduction is not defined 2434

10位PWM能否满足电梯±5mm平层精度?4位扩展法让10位PWM达到14位精度

电梯平层精度直接关系乘坐舒适性与安全性,而PWM分辨率是决定精度的关键因素之一。10位PWM能否满足±5mm的平层精度要求?本文从分辨率与物理量的对应关系出发,结合工程精度需求与实战对比,给出明确的选型结论与解决方案,请参考优快云博客《4位扩展法:基于ATtiny816的高精度PWM软件扩展方法》和《低成本高精度PWM:4位扩展法原理、实现和工程实践》。10位PWM的分辨率为 $2^{10} = 1024$ 级。

m0_73354873的博客 245

第八章 MobileNetv3网络详解

本文介绍了基于互补的搜索技术和新颖的架构设计的MobileNets的下一代。MobileNetV3通过硬件感知网络架构搜索(NAS)和NetAdapt算法相结合,针对移动电话CPU进行优化,随后通过新颖的架构改进技术进行了进一步提高。本文开始探索自动化搜索算法和网络设计如何相互协作,以利用互补的方法改进整体技术水平。通过此过程,我们创建了两个新的MobileNet模型:MobileNetV3-Large和MobileNetV3-Small,分别针对高资源和低资源使用情况。

ADICDFHL的博客 1万+

前端文件转[byte 数组]形式

前端文件导入文件,转流方法

qq_37130872的博客 4851

【一键搞定】ThinkPHP6.0.2+PHPStudy+Composer极速安装指南——附完整下载包与避坑技巧

本文提供了一份ThinkPHP6.0.2的完整下载包,并详细介绍了如何配合PHPStudy和Composer进行极速安装与配置。指南涵盖了环境准备、Composer国内镜像加速、项目部署及常见避坑技巧,旨在帮助开发者,尤其是内网或网络不佳的用户,快速搭建可运行的TP6开发环境,绕过依赖下载的繁琐步骤。

assembly8low的博客 1008

Java byte数据类型

字节(byte)数据类型是8位有符号Java原始整数数据类型。其范围是-128至127(-2^7至2^7-1)。 字节类型是Java中可用的最小整数数据类型。当程序使用其值在-128到127范围内的大量变量或在文件或网络中处理二进制数据时,使用字节变量。 字节类型没有字节字面量。可以将任何在字节范围内的int字面量分配给一个字节变量。 例如,  byte b1 = 125; byte b2

ilvest的博客 1万+

《低功耗方法学》翻译——第一章:介绍

第一章:介绍

记录所学,分享知识,结识挚友 2069

【26美赛D题】2026美赛数学建模(MCM/ICM)思路解析及代码分享

2026美赛D题数学建模竞赛思路解析摘要:本文针对美赛D题提供系统性解决方案,提出四层建模框架(数据层、机理层、模型层、决策层),强调逻辑闭环比模型复杂度更重要。包含通用建模步骤:指标体系构建、状态评估、动态预测和策略优化,并给出Python基础代码框架。论文建议采用七段式结构,突出从现实问题到决策方案的完整闭环。核心在于通过数据驱动方法揭示问题规律,结合多源数据整合、系统行为建模和风险评估,最终形成可落地的决策建议,体现数学建模解决实际问题的能力。

一键难忘的博客 1085

byte是什么数据类型_【Java面试考点3】java基础之数据类型

一、数据类型基础3.1什么是数据类型?数据类型是一组性质相同的值的集合以及定义在这个值集合上的一组操作的总称(集合是指具有某种特定性质的具体的或抽象的对象汇总而成的集体。)3.2数据类型的分类?一、基本数据类型:基本数据类型有八种(byte,short,int,long,float,double,char,boolean) 1.byte(字节型):内存占一个字节,取值范围 -128~127 ...

weixin_39922683的博客 4257

Flow Match 原理 及应用

Flow Matching(流匹配)是生成模型的范式革命——用确定性ODE替代随机扩散过程,在自动驾驶轨迹预测中实现10倍采样加速和更高生成质量。更快的采样速度:通常只需 10-50 步就能生成高质量样本更稳定的训练:避免了传统扩散模型中复杂的噪声调度理论基础:基于连续正规化流(Continuous Normalizing Flows)核心思想:Flow Matching 通过学习一个 向量场(vector field) 来直接建模从噪声分布到目标分布的连续变换路径。

@bangbang的博客 105

Java数据类型

文章目录定义分类计算机存储单元Java基本数据类型图数据类型转换 定义 Java语言是强类型语言,对于每一种数据都定义了明确的具体的数据类型,在内存中分配了不同大小的内存空间。 分类 基本数据类型 数值型 整数类型(byte,short,int,long) 浮点类型(float,double) 字符型(char) 布尔型(boolean) 引用数据类型 类(class) 接口(...

ThinkWon的博客 2万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

【Java基础】Java数据类型以及数据类型之间的转换

Java数据类型小技巧,今天你学废了吗?

程序员青戈 6711

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Java 数据类型

Java基础

weixin_44374928的博客 821

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

【Java基础之数据类型】String 属于什么数据类型

1、前言 首先提出一个问题在 Java 中 String 属于那种数据类型? 我的一个朋友是这么说的,「what?是不是有很多疑惑,int、double、String 不都是经常一起使用的么,应该都是同一种数据类型吧,基本数据类型?」 大家认为呢?「老公你快说句话啊!」 对于初学者而言可能没有对数据类型没有很强的意识,没有特别的注意到这里,都会认为 int、double、String 基本上都是...

looper梦呓 4326

java怎么判断数据类型_Java 数据类型及其判断

一、Java中的数据类型,可分为两类:1.基本数据类型,也称原始数据类型:byte、short、char、int、long、float、double、boolean它们之间的比较,应该用双等号(==)比较的是它们的值。2.引用数据类型:JAVA当中所有的类都是继承于Object这个基类的,在Object中的基类中定义了一个equals的方法,这个方法的初始行为是比较变量(栈)内存中存放的对象的(堆...

weixin_39649405的博客 1万+

java表格数据类型_Java数据类型

一、首先大概了解一下关于数据的内容或要点。1、程序在执行的过程中,需要对数据进行运算,也需要储存数据。这些数据可以是由使用者输入,也可以是从文件中取得的,也可以是从网络中获取的。在程序运行的过程中,这些数据通过变量储存在内存中,以便程序随时使用。2、若需要找到储存在内存中的数据,就需要将数据指定给变量,并命名,通过变量名(储存数据的内存空间)来找到相关数据。3、一个变量代表一个内存空间,数据就储存...

weixin_39683734的博客 1062

【JAVA】5、Java数据类型的划分及8种基本数据类型

本篇介绍Java数据类型的划分及8种基本数据类型

思跡的博客 9137

Java数据类型之Java数据类型的划分方式

程序的本质在于数据的处理上。所以如果想进行程序处理,那么必须要有相应的数据类型。在Java中针对于数据类型一共可以划分为两类: 基本数据类型:是进行内容的操作,而不是进行内存的操作; |- 数值型: |- 整型:byte,short,int,long; 默认值:0 |- 浮点型:float,d...

SILENCE_LM_的博客 744

Java数据类型之引用数据类型

在Java中除了8种基本数据类型外,其他数据类型全部都是引用(reference)数据类型,引用数据类型用来表示复杂数据类型,如下图所示,包含:类、接口和数组声明的数据类型。 引用数据类型:有类,接口,数组等。 Java中的引用数据类型,相当于C等语言中指针(pointer)类型,引用事实上就是指针,是指向一个对象的内存地址。引用数据类型变量中保持的是指向对象的内存地址。很多资料上提到Java不支持指针,事实上是不支持指针计算,而指针类型还是保留了下来,只是在Java中称为引用数据类型。 1 int x =

qq_43694194的博客 3738

java中简单的数据类型_Java的简单数据类型

Java的简单数据类型数据类型就是对内存位置的抽象表达。程序员可以利用多种数据类型:某些由编程语言定义,某些由外部库定义,还有些则由程序员来定义。很多编程语言都依赖于特定的计算机类型和对数据类型属性的具体编译实现,比如word和integer数据类型的大小等。另一方面,Java的虚拟机负责定义其内置数据类型的各方面内容。这就意味着不管Java虚拟机(JVM)运行在何等低级的操作系统之上,数据类型的...

weixin_39844515的博客 1348
上一篇: 写在Java的前面——Java简介
下一篇: Java的四种对象引用类型
码农驿站
博客等级 码龄10年 5粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值