Java基础数据类型详解
在Java中的数据类型一共有8种,大致分为整型(4个)浮点型(2个)布尔(1)字符(1个)
| 分类 | 类型 | 默认值 | 占用字节 | 范围 |
| 整型 | byte | 0 | 1 = 8 bit | -2^7 - 2^7 |
| short | 0 | 2 = 16 bit | -2^15 - 2^15-1 | |
| int | 0 | 4 = 32 bit | -2^31 - 2^31-1 | |
| long | 0L | 8 = 64 bit | -2^63 - 2^63-1 | |
| 浮点型 | float | 0.0 | 4 = 32 bit | -2^31 - 2^31-1 |
| double | 0.0 | 8 = 64 bit | -2^63 - 2^63-1 | |
| 字符 | char | 空 | 2 = 8 bit | 0-2^16-1 |
| 布尔 | boolean | false | 1 = 8 bit | true,false |
说明:
bit : 位,计算机存储数据的最小单元,二进制数中的一个位数。
byte : 字节,计算机存储数据的基本单位,一个字节由8位二进制数组成。通常一个汉字占两个字节。所以一个char类型的字符是可以存储汉字的。
思考:为什么范围都是从( -2^(所占位数-1) 至 2^(所占位数-1) -1 )?
答案:因为计算机存储数据是以二进制数据的补码形式存储。补码表示:正数的补码与原码相同,负数的补码则符号位是1,数值部分按位取反后再在末位(即最低位)+ 1;
举个例子:
十进制:+7 , 二进制原码:0000 0111 ,反码:0000 0111 补码:0000 0111
十进制:-7 , 二进制原码:1000 0111 ,反码: 1111 1000 补码:1111 1001(符合位1,数值按位取反,最低位加1)
注:二进制,十进制,十六进制,原码,反码,补码等,属于微机原理里面的基础详细介绍可查看
二进制等数制详解
Java基础数据类型详解的更多相关文章
- JAVA基础——异常详解
JAVA异常与异常处理详解 一.异常简介 什么是异常? 异常就是有异于常态,和正常情况不一样,有错误出错.在java中,阻止当前方法或作用域的情况,称之为异常. java中异常的体系是怎么样的呢? 1 ...
- java基础:数组详解以及应用,评委打分案例实现,数组和随机数综合,附练习案列
1.数组 1.1 数组介绍 数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致. 1.2 数组的定义格式 1.2.1 第一种格式 数据类型[] 数组名 示例: int[] arr; ...
- JAVA基础——内部类详解
JAVA内部类详解 在我的另一篇java三大特性的封装中讲到java内部类的简单概要,这里将详细深入了解java内部类的使用和应用. 我们知道内部类可分为以下几种: 成员内部类 静态内部类 方法内部类 ...
- Java 基础之详解 Java IO
Java IO基本概念 Java IO:即Java输入/输出系统,区分Java的输入和输出:把自己当成程序, 当你从外边读数据到自己这里就用输入(InputStream/Reader), 向外边写数据 ...
- Java基础 - 异常详解
异常的层次结构 Throwable Throwable 是 Java 语言中所有错误与异常的超类. Throwable 包含两个子类:Error(错误)和 Exception(异常),它们通常用于指示 ...
- 【干货】用大白话聊聊JavaSE — ArrayList 深入剖析和Java基础知识详解(二)
在上一节中,我们简单阐述了Java的一些基础知识,比如多态,接口的实现等. 然后,演示了ArrayList的几个基本方法. ArrayList是一个集合框架,它的底层其实就是一个数组,这一点,官方文档 ...
- Java 基础之详解 Java 反射机制
一.什么是 Java 的反射机制? 反射(Reflection)是Java的高级特性之一,是框架实现的基础,定义:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法: ...
- JAVA基础——数组详解
学习JAVA中数组的使用 一.什么是数组? 问:编写代码保存 4 名学生的考试成绩. 答:简单啊,定义 4 个变量呗 问:那"计算全年级 400 名学生的考试成绩",肿么办 答: ...
- java基础(十三)-----详解内部类——Java高级开发必须懂的
可以将一个类的定义放在另一个类的定义内部,这就是内部类. 为什么要使用内部类 为什么要使用内部类?在<Think in java>中有这样一句话:使用内部类最吸引人的原因是:每个内部类都能 ...
随机推荐
- 快速安装jumpserver开源堡垒机
一 安装centos 7.X操作系统 二.选择极速安装(注意配置需要是4G2核) https://jumpserver.readthedocs.io/zh/master/install/setup_b ...
- 攻克solo第六课(大调音阶与真的爱你)
在本期文章中,笔者将通过guitar pro7和大家分享大调音阶的知识. 不知道大家有没有试着使用my song book里面的谱子,反正笔者是觉得赚大了,并且找了囊括民谣.爵士到摇滚在内不同风格的谱 ...
- mac实用软件推荐 mac好用的软件
终于入手了梦寐以求的苹果电脑,但却发现其操作系统与Windows大相径庭!不会使用怎么办?不用担心,我们可以借助软件的力量.一款实用的Mac软件不仅能够使你的工作效率显著提高,同时它还能帮助你更快地熟 ...
- jQuery 第五章 实例方法 详解动画之animate()方法
.animate() .stop() .finish() ------------------------------------------------------------------- ...
- Mac虚拟环境安装django
安装:pip3 install virtualenv 创建:Virtualenv env01 激活:Source env01/bin/activate django安装:pip3 install dj ...
- 【ubuntu】搭建mysql5.7
一.安装mysql (一) 安装mysql 注意别安装8,8配置太高了 $: sudo apt-get install mysql-server or $: sudo apt-get install ...
- 25. K 个一组翻转链表
给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表.k 是一个正整数,它的值小于或等于链表的长度.如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序.示例 :给定这个链表: ...
- Javascript 严格模式的一些理解
平常我们在ECMAscript5中可以声明以下的变量 num = 5; console.log(num);//输出的是变量5 而为了Javascript更合理.更安全.更严谨的方向发展,添加了一种新的 ...
- python ddt实现数据驱动
首先安装ddt模块,命令:pip install ddt 通常情况下,data中的数据按照一个参数传递给测试用例,如果data中含有多个数据,以元组,列表,字典等数据,需要自行在脚本中对数据进行分解或 ...
- SRX_Test_2_key
转载自 Livedream YBT1396 #include<iostream> #include<map> #include<queue> #include< ...