java 基本--数据类型转换--001
小可转大,大转小可能会损失精度(编译出错,需要强制转换)
A: byte,short,char -> int -> long -> float ->double
B: byte,short,char相互之间不转换,他们参与运算首先转换成int
C: int 和float都是4个字节,指的是分配的存储空间一样,但是存储格式不一样
int:普通计数法
float:科学记数法(float型的二进制位里面有一部分表示幂数,科学计数法总是能用更少的文字表示更大的范围,多一个零只需要增加一次幂就可以了)
可以粗略的理解为:int和float整数部分范围一样
D:
int i,int j;//NG
byte b1 = 3, b2 = 4, b3;
b3 = b1 + b2; //NG
b3 = (byte)(b1 + b2); //OK 类型提升
b3 = 3 + 4; //OK 常量,先把结果计算出来,然后看是否在byte范围内,在就不报错
E: 不要随意强制转换,因为隐含精度问题 F:
double d = 3.123; //默认为double类型
folat f = 3.123f;
float f = (float) 3.123;
float f = 3.123 //NG G: a:97,A:65,0:48
System.out.println('a' + 1) //98 H:
System.out.println('a' + 1 + "hello") //98hello
System.out.println("hello" + 'a' + 1) //helloa1 System.out.println("5+5=" +5 +5) // 5+5=55
System.out.pringln(5+ 5+ "=5+5") // 10=5+5 I: float能表示的数据范围比long大,因为底层结构不同
long:2^63 -1
float:3.4*10^38 >2*10^38 >2*8^38 >2*2^3^38 > 2*2^114 J:Java语言中的字符char可以存储中文汉字吗?为什么?
可以,因为java语言中char占两个字符
java语言采用unicode编码 K: byte -128 ~ 127
byte b1 = 127; //127
byte b2 = 128; //-128
byte b3 = 129; //-127
byte b4 = 130; //-126
L:
int y = 10;
y +=20;
System.out.println(y) //30
M:
short s = 1;
s = s + 1; // NG 损失精度
Sysout.out.println(s) short s = 1;
s += 1; // OK 扩展的赋值运算符其实隐含了强制类型转换 == s = (s的类型)(s + 1)
Sytem.out.println(s)
/***八种基本数据类型***/
一个字节1byte==8位==256个数== -128~127
byte: 字节型 1byte
char: 字符型 2byte
short: 短整型 2byte
int: 整形 4byte
float: 浮点型(单精度) 4byte
double: 浮点型(双精度)8byte
long: 长整形 8byte
boolean: 布尔型 1byte //存储的是0或1 占1个字节 但实际用时只会用一个字节的一位,后面的7位不会用到
// 按照ANSI编码标准,标点符号、数字、大小写字母都占一个字节,汉字占2个字节。按照UNICODE标准所有字符都占2个字节
java 基本--数据类型转换--001的更多相关文章
- Java中数据类型转换&基本类型变量和对象型变量
1.Java的数据类型分为三大类 布尔型,字符型和数值型 其中数值型又分为整型和浮点型 2.Java的变量类型 布尔型 boolean 字符型 char 整型 byte,short,int,lo ...
- Java基础知识强化22:Java中数据类型转换
数据类型转换: (1). 自动转换 低级变量可以直接转换为高级变量,这叫自动类型转换.比如: byte b: int b: long b: float b: double b: 上面的语句可 ...
- Java中数据类型转换大全(个人总结)
一.字符串转换为其他类型 1.将字符串转化为int型 (1)方法一 int i = Integer.parseInt(String str); (2)方法二 int i = Integer.value ...
- java常用数据类型转换
在Java开发过程中经常会涉及到数据类型的转换问题,比如数字型转字符型,字符型转日期型,字符串转数组等等,以及其他类型的强制转换等.经常出现,所以有必要总结一下. 1.如何将字串 String 转换成 ...
- Java基础-数据类型转换
1).简单类型数据间的转换,有两种方式:自动转换和强制转换,通常发生在表达式中或方法的参数传递时. 自动转换 当一个较"小"数据与一个较"大"的数据一起运算 ...
- Java中数据类型转换问题
boolean类型不可以转换为替他的数据类型. Java中byte(8位).short(16位).char三种类型的优先级是相同的,相同优先级之间是不能进行自动转换的(如果相互转换的话,必须强制类型转 ...
- Java高级数据类型转换:包装类、String字符串、Date类等与其他类型转换
1.包装类过渡类型转换 一般情况下,我们首先声明一个变量,然后生成一个对应的包装类,就可以利用包装类的各种方法进行类型转换了.例如: 当希望把float型转换为double型时: float f1=1 ...
- java的数据类型转换
java中有八种基本数据类型分别是字节型byte.整型int.短整型short.长整型long.单精度浮点型float.双精度浮点型double.字符型char.布尔型boolean.这些基本数据类型 ...
- java中数据类型转换
1.自动类型转换:首先两者数据类型要兼容,且目标类型要大于源类型如(int类型转换成double类型) 2.强制转换:两者数据类型要兼容,会使破坏数据的结构
随机推荐
- VS中添加lib与dll
参考与拓展阅读:https://blog.csdn.net/u012043391/article/details/54972127 lib: 1.附加包含目录---添加工程的头文件目录: ...
- 清华大学《C++语言程序设计基础》线上课程笔记05---vector对象,对象的复制与移动,string类
vector 对象 C++标准库中的一个类模板 封装任何类型的动态数组,自动创建和删除. 数组下标越界检查. 将动态数组封装成类的知识点中封装的ArrayOfPoints也提供了类似功能,但只适用于一 ...
- vim 智能提示插件 javacomplete安装
*** 从https://github.com/vim-scripts/javacomplete网站中下载javacomplete *** 新建javacomplete-master文件夹,将java ...
- 156. Merge Intervals【LintCode by java】
Description Given a collection of intervals, merge all overlapping intervals. Example Given interval ...
- VMware中Linux的NAT相关配置
我这边使用的是CentOS7,因为搭建环境主要是为了后期做集群,所以会搭建三台机器master,slave1,slave2. 一.设置固定IP 1. 进入到/etc/sysconfig/network ...
- c++动态库封装及调用(1、动态库介绍)
1.一个程序从源文件编译生成可执行文件的步骤: 预编译 --> 编译 --> 汇编 --> 链接 (1)预编译,即预处理,主要处理在源代码文件中以“#”开始的预编译指令,如宏展开 ...
- BZOJ1452_Count_KEY
题目传送门 二维树状数组,对于每个颜色开一个树状数组,用容斥求解. code: #include <cstdio> using namespace std; int read() { ') ...
- QImage对一般图像的处理
QImage对一般图像的处理 Qt中QImage类封装了对于一般图像像素级的操作,图像显示则使用QPixmap. 本文说说对一般图像(常见格式,图像不大)的处理,比如将彩色图像处理为灰度图像.首先要获 ...
- VIN码识别:毫秒间99%精准识别
科技改变生活.几年前,人工智能还仅是一个噱头,现在已逐渐融入我们的工作和生活,代替了一些重复性的.繁杂的人工劳动,在提高工作效率的同时,提升了客户体验. 车架号也叫VIN码,由17位数字和字母混合组成 ...
- FU-A方式分包
当 NALU 的长度超过 MTU 时, 就必须对 NALU 单元进行分片封包. 也称为 Fragmentation Units (FUs). 0 1 2 3 0 1 2 3 4 5 6 7 8 9 ...