`
liufeiluwei
  • 浏览: 641 次
  • 性别: Icon_minigender_1
  • 来自: 天津
最近访客 更多访客>>
社区版块
存档分类
最新评论

java---解析java的基本类型

    博客分类:
  • java
阅读更多
1.Java中的数值类型不存在无符号的,他们的取值范围是固定的,不会随着硬件或系统环境的变化而改变。

2.对于数值类型的基本类型的取值范围,我们无需强行去记忆,因为它们的值都已经以常量的形式定义在对应的包装类中了。例如:Byte.SIZE表示byte占多少位(8位),Byte.MIN_VALUE,Byte.MAX_VALUE分别表示byte能取到的最小,最大值。

3.基本类型存储在栈中,因此它们的存取速度要快于存储在堆中的对应包装类的实例对象。

4.所有基本类型(包括void)的包装类都使用了final修饰,因此我们无法继承它们扩展新的类,也无法重写它们的任何方法。

5.未带有字符后缀标识的整数默认为int类型;未带有字符后缀标识的浮点数默认为double类型。

6.如果一个整数的值超出了int类型能够表示的范围,则必须增加后缀“L”(不区分大小写,建议用大写,因为小写的L与阿拉伯数字1很容易混淆),表示为long型。

7.带有“F”(不区分大小写)后缀的整数和浮点数都是float类型的;带有“D”(不区分大小写)后缀的整数和浮点数都是double类型的。

8.编译器会在编译期对byte、short、int、long、float、double、char型变量的值进行检查,如果超出了它们的取值范围就会报错。

9. int型值可以赋给所有数值类型的变量;long型值可以赋给long、float、double类型的变量;float型值可以赋给float、double类型的变量;double型值只能赋给double类型变量。

10.当使用+、-、*、/、%运算符对基本类型进行运算时,遵循如下规则:
1). 只要两个操作数中有一个是double类型的,另一个将会被转换成double类型,并且结果也是double类型;
2). 否则,只要两个操作数中有一个是float类型的,另一个将会被转换成float类型,并且结果也是float类型;
3). 否则,只要两个操作数中有一个是long类型的,另一个将会被转换成long类型,并且结果也是long类型;
4). 否则,两个操作数(包括byte、short、int、char)都将会被转换成int类型,并且结果也是int类型。

11.当使用+=、-=、*=、/=、%=、运算符对基本类型进行运算时,遵循如下规则:
运算符右边的数值将首先被强制转换成与运算符左边数值相同的类型,然后再执行运算,且运算结果与运算符左边数值类型相同。

12.当使用“==”运算符在基本类型和其包装类对象之间比较时,遵循如下规则:
1). 只要两个操作数中有一个是基本类型,就是比较它们的数值是否相等。
2). 否则,就是判断这两个对象的内存地址是否相等,即是否是同一个对象。

13.哪些类型可以用于switch语句呢,
1). byte、char、short、int四种基本类型以及它们的包装类(需要Java5.0/1.5以上版本支持)都可以用于switch语句。
2). long、float、double、boolean四种基本类型以及它们的包装类(在Java所有版本中)都不能用于switch语句。
3). enum类型,即枚举类型可以用于switch语句,但是要在Java5.0(1.5)版本以上才支持。
4). 所有类型的对象(包括String类,但在Java5.0/1.5以上版本中,该项要排除byte、char、short、int四种基本类型对应的包装类)都不能用于switch语句。
分享到:
评论

相关推荐

    aliyun-java-sdk-kms-2.11.0-API文档-中英对照版.zip

    赠送jar包:aliyun-java-sdk-kms-2.11.0.jar; 赠送原API文档:aliyun-java-sdk-kms-2.11.0-javadoc.jar; 赠送源代码:aliyun-java-sdk-kms-2.11.0-sources.jar; 赠送Maven依赖信息文件:aliyun-java-sdk-kms-...

    protobuf-java-3.11.4-API文档-中文版.zip

    赠送jar包:protobuf-java-3.11.4.jar; 赠送原API文档:protobuf-java-3.11.4-javadoc.jar; 赠送源代码:protobuf-java-3.11.4-sources.jar; 赠送Maven依赖信息文件:protobuf-java-3.11.4.pom; 包含翻译后的API...

    JavaUser-Agent解析库

    JavaUser-Agent解析库是用于处理和解析HTTP请求头中的User-Agent字符串的工具,这对于Web开发、数据分析或爬虫程序来说非常关键。User-Agent字符串包含了访问网站的客户端信息,如浏览器类型、版本、操作系统等。在...

    taobao-java-sdk-1.0.0_taoбao_ddsdk_钉钉收_dingtalk_

    本文将详细讲解"taobao-java-sdk-1.0.0",这是一个专门用于Java环境下的钉钉SDK,它允许开发者高效地访问钉钉小程序,获取并处理钉钉中的各类数据。 1. **钉钉Java SDK介绍** 钉钉Java SDK是钉钉官方提供的开发...

    protobuf--java-3.2.0.jar & protoc-3.2.0-windows-x86_32.exe

    标题中的"protobuf--java-3.2.0.jar & protoc-3.2.0-windows-x86_32.exe" 提及了两个关键组件,它们分别是Protocol Buffers(protobuf)的Java运行库和编译器。Protocol Buffers是Google开发的一种数据序列化协议,...

    taobao-sdk-java-auto-1.0.jar

    taobao-sdk-java-auto-1.0.jar,

    mysql-connector-java-5.1.40.tar.gz

    "mysql-connector-java-5.1.40.tar.gz" 是这个驱动程序的一个特定版本,版本号为5.1.40。这个压缩包包含了运行Java应用与MySQL数据库进行交互所需的类库和其他相关文件。 在Linux环境中处理这个压缩包,首先需要将...

    java-1.8.0-openjdk.linux.x86_64

    总之,"java-1.8.0-openjdk.linux.x86_64"是Linux系统上用于开发和运行Java应用的重要软件包,包含了Java开发和运行所需的所有基本组件,支持最新的Java 8特性,并针对64位系统进行了优化。安装和使用这个包,开发者...

    java-redis-rdb.zip

    java-redis-rdb 是一个用来解析 Redis 的 dump.rdb 文件的 Java 开发包。 标签:javaredisrdb redis

    mysql-connector-java-5.1.6-bin.jar.zip

    提供mysql-connector-java-5.1.6-bin.jar|提供mysql-connector-java-5.1.6-bin.jar|提供mysql-connector-java-5.1.6-bin.jar

    解析nginx配置文件nginx-java-parser.zip

    解析nginx配置文件,并将nginx配置文件格式化成对象,方便java程序管理nginx配置。解析配置文件并非使用正则匹配,而是使用语法分析树处理解决的。 标签:nginx

    taobao-sdk-java-auto源码

    阿里云的taobao-sdk-java-auto.jar及源码, 感兴趣的朋友可以下载一下。。。。。。。

    mysql驱动包-mysql-connector-java-5.1.41-bin.zip

    MySQL驱动包`mysql-connector-java-5.1.41-bin.zip`是专门为Java开发者设计的,用于在Java应用程序中连接MySQL数据库的JDBC驱动程序。这个压缩包包含了MySQL Connector/J,它是MySQL官方提供的Java Database ...

    mysql-connector-java-8.0.11.jar包

    mysql-connector-java-8.0.11.jar连接器,用于在hive和mysql的数据库连接

    java-property-utils-1.9.jar

    2. **类型转换**:默认的`Properties`类只能处理字符串类型的属性,但`java-property-utils`库支持将属性值自动转换为其他数据类型,如整型、浮点型、布尔型等,使得数据处理更加灵活。 3. **环境变量和系统属性的...

    mysql-connector-java-5.1.30

    MySQL是世界上最受欢迎的关系型数据库管理系统之一,而`mysql-connector-java-5.1.30`是MySQL官方为Java开发者提供的数据库连接驱动包。这个驱动包使得Java应用程序能够与MySQL数据库进行无缝通信,执行SQL查询,...

    Java开发案例-springboot-17-整合WebMagic实现爬取和解析CSDN文章数据-源代码+文档.rar

    Java开发案例-springboot-17-整合WebMagic实现爬取和解析CSDN文章数据-源代码+文档.rar Java开发案例-springboot-17-整合WebMagic实现爬取和解析CSDN文章数据-源代码+文档.rar Java开发案例-springboot-17-整合...

    mysql-connector-java-5.1.37jar包和源码

    在本案例中,"mysql-connector-java-5.1.37.jar" 是一个特定版本的MySQL JDBC驱动程序,发布于2016年,属于较旧但仍然广泛使用的版本。这个jar包是Java开发者用来连接到MySQL服务器的关键组件。 首先,我们需要了解...

    mysql-connector-java-8.0.28

    java连接mysql的稳定驱动

Global site tag (gtag.js) - Google Analytics