Java - day001 - 8种基本数据类型
一字节8电位
Java byte 最左边一位表示正负,0是正,1是负.
(option / alt) + / 代码提示
Refactor 重构 Rename 重命名 (windows 重命名是选中需要重命名的文件点击快捷键 F2)
byte 1字节 (Java 的 byte 类型 最左边一位电位表示符号 0正, 1 负)
short 2字节
int 4字节
long 8字节
float 4 字节
double 8字节
char 2字节 (unicode 编码表中的字符) 0~65535
boolean 1字节 ( 一个字节八个电位 00000001 表示真(true), 00000000表示假(flase))
// 基本类型的字面值的规则(5条)
1: 整数字面值, 是 int 类型
右侧是int
int a = 4355;
int a = 99999999999999; 错误的 没表明字面值后缀,默认int 但是超出int 范围
2: byte,short , char 比int 小的整数可以用范围内的值直接赋值
byte a = 127;
3: 浮点数字面值是 double类型
double a = 3.14;
float a = 3.14; 错误没表明字面值后缀,默认double 但是超出 float 范围,不能赋值a
4: 字面值后缀(大小写都可以)
L - long
long a = 9999999999L;
F - float
float a = 3.14f;
D - double
double a = 3.0d;
5: 进制前缀
二进制 4 位(最大1111 是16), 所以二进制可以足够表示所有 16以下 数字,
一个16 进制的字符,可以表示二进制的4位,两个16进制的字符,可以表示8位,及一个字节值.
0x - 16 进制 (表示二进制4位)
0xff 既 255
0 - 8进制 (表示二进制3位)
0377 既255
\u - char 类型 16 进制
必须完整表示 char 类型的两个字节值
'a' 97 '\u0061'
0000 0000 0110 0001
// 基本类型的运算规则(5条)
1.计算结果的数据类型, 与最大的类型一致
3/2 = 1; (int / int) = int;
3d/2 = 1.5; (double / int) = double
2: byte, short , char 比int小的整数,运算时会先变成 int 在 运算
byte a = 3;
byte b = 4;
byte c = a + b; (错误), 运算时是 int ,用 byte接收格式不对
3: 整数运算溢出
Integer.MAX_VALUE+1 得负数最小值
就像时钟转圈一样,转到最大,再加回到最小.
300000000*60*60*24*365 (溢出的错误结果, 乘第一次时超出int 范围,后面再乘都是错
300000000L*60*60*24*365(对的)
4: 浮点数运算不精确
2-1.9 = 0.10000000000009
Java 提供了做精确运算的方法,
5: 浮点数的特殊值
Infinity (无穷大)
3.14/0 或者 Double.MAX_VALUE*2; 带负号就是无穷小
NaN (不是数)
负数开方得到, 数学上是虚数, java 不表示虚数
Math.sqrt(-2); 负数开方
// 基本类型的数据转换
从小到大的转换是自动转换,转成浮点数可能会不精确
byte a = 1; 既 00000001 转成 int 类型 为 00000000 00000000 00000000 00000001
byte b = -1, 既 11111111 转成 int 类型 为 11111111 11111111 11111111 11111111
从大的类型转小的类型
int 转 byte 4个字节转成一个字节, 切掉前面的三个字节, 必须强制转型
int a = 356;
byte b = (byte)a;
从大转到小的类型可能引起数据损失, 必须强制转型
浮点数转整数小数会被直接舍弃,
char (unicode 编码表中的字符)

Java - day001 - 8种基本数据类型的更多相关文章
- Java的8种基本数据类型
待整理主题:Java的8种基本数据类型与对应封装类型.拆箱.装箱 =================================================================== ...
- Java的八种基本数据类型及其包装类
Java有八种基本数据类型,所谓基本类型就是说存储时仅存在栈中,那么与之相对就是引用类型,引用类型既存在栈里又存在堆里,栈内存放堆内地址. 八种基本类型分别为byte short int long f ...
- Java学习笔记四:Java的八种基本数据类型
Java的八种基本数据类型 Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. Java基本类型共有八种,基本类型可以分为三类,字符类型char,布 ...
- Java的9种基本数据类型以及封装类
Java的9种基本数据类型以及封装类 基本类型 大小(单位/字节) 默认值 封装类 byte 1 (byte)0 Byte short 2 (short)0 Short int 4 0 Integer ...
- Java中几种常用数据类型之间转换的方法
Java中几种常用的数据类型之间转换方法: 1. short-->int 转换 exp: short shortvar=0; int intvar=0; shortvar= (short) in ...
- java中八种基本数据类型以及它们的封装类,String类型的一些理解
在我们面试或者考试过程中经常会考到八种基本数据类型以及它们的封装类,那么有哪八种基本数据类型呢?它们的封装类又是什么呢? 首先,八种基本数据类型分别是:int.short.float.double.l ...
- java 基础--8 种基本数据类型:整型、浮点型、布尔型、字符型 整型中 byte、short、int、long 的取值范围 什么是浮点型?什么是单精度和双精度?为什么不能用浮点型表示金额?
一.8种基本数据类型(4整,2浮,1符,1布): 整型:byte(最小的数据类型).short(短整型).int(整型).long(长整型): 浮点型:float(浮点型).double(双精度浮点 ...
- JAVA的8种基本数据类型和类型转换
byte 字节型 1字节(8bit) 初始值:0 char 字符型 2字节 空格 short 短整型 2字节 0 int 整形 4字节 0 long ...
- JAVA的8种基本数据类型分析
基本数据类型(8个) 1.整数类型(4个) 字节个数 取值范围 byte(字节) 1(8位) -2^7~2^7-1 short(短整型) 2(16位) -2^15~2^15-1 int(整形) 4 ...
随机推荐
- 解决CentOS6.5下MySQL5.6无法远程连接的问题
在CentOS6.5上安装了Mysql5.6,,本地服务启动成功,但是远程使用Navicat无法远程连接到MySQL数据库,为了解决这个问题,方法如下: (1)先将MySQL服务停掉# service ...
- dp回文
.dp回文子串 通常在dp数组中存放的是 从i到j是否是回文子串 1.动态规划 2.中心扩展法 #include<iostream> #include<algorithm> # ...
- layui table默认选中指定行
表格默认选中行,在回调里写入 done: function (res, curr, count) { tableData = res.data; $("[data-field='id']&q ...
- Python神器 Jupyter Notebook
什么是Jupyter Notebook? 简介 Jupyter Notebook是基于网页的用于交互计算的应用程序.其可被应用于全过程计算:开发.文档编写.运行代码和展示结果. Jupyter Not ...
- magento 2.2.3 -/.gitignore -/.htaccess 分享
/.htaccess ############################################ ## overrides deployment configuration mode v ...
- 熵值法 [异质指标同质化]中-Matlab 数据归一化预处理 mapminmax函数
一.mapminmax Process matrices by mapping row minimum and maximum values to [-1 1] 意思是将矩阵的每一行处理成[-1,1] ...
- React学习笔记(一)- 入门笔记
React入门指南 作者:狐狸家的鱼 本文链接:React学习笔记 GitHub:sueRimn 1.组件内部状态state的修改 修改组件的每个状态,组件的render()方法都会再次运行.这样就可 ...
- win 10 dpi:150% 与 win 7 dpi:150% 的不同之处
由于 win 7 和 win 10 的 dpi 处理方式不同,导致我们写的客户端程序在 win 7 上运行正常,在 win 10(dpi:150%)上运行不正常了. 具体的描述,可参考:解决win10 ...
- setTimeout与setInterval
setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式. 语法:setTimeout(code/function, milliseconds, param1, param2, ...) ...
- SpringBoot文件上传(MVC情况和webFlux情况)
MVC情况 引入依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=" ...