黑马程序员【android】Java的数据类型的学习笔记二
来源:互联网 发布:淘宝掌柜宝 编辑:程序博客网 时间:2024/04/28 06:48
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流!
-------学习了毕老师java的几大数据类型,基本数据第二天就都学完了,接下来的引用数据类型都是分章节,先学习了数组,然后是类的引用对象,接下来是接口引用,特作此总结:java数据类型图: java数据类型图:
java数据类型图:java数据类型图:
Java的数据其实呢 有四种类别的类型,共有八种类型,也就是我们常常在书中或者视频中听到的java有四类八种基础数据类型。除了这四类八种基础类型,剩下的java 一切类型都是引用类型。
第一类:整型 byte short int long第二类:浮点型 float double第三类:逻辑型 boolean(它只有两个值可取true false)第四类:字符型 char这四类八种基础数据类型 都在栈中直接分配内存空间,这些都是基础数据流类型,剩下的一切引用类型都存储在堆中,引用存储在栈中,数据存储在堆中 引用指向堆中的数据,我说的这些可能大家 比较绕,做个比喻吧,把客厅比喻java的栈内存块,把卧室比如堆内存块,然后呢 电视机的遥控器也就是也就是电视机的引用放在客厅里,然后 遥控器指向客厅(堆)里的电视机(对象或叫数据),
然后,我们就可以从客厅里操作卧室里的电视机啦.java中默认的整数类型是int类型,如果要定义为float型,则要在数值后加上l或L;默认的浮点型也是双精度浮点,如果要定义为float型,则要在数值后加上f或F。 .int型值可以赋给所有数值类型的变量;long型值可以赋给long、float、double类型的变量;float型值可以赋给float、double类型的变量;double型值只能赋给double类型变量。把一个能表示更大范围或者更高精度的类型,转换为一个范围更小或者精度更低的类型时,就需要使用强制类型转换。例如:把一个double型值赋值给一个long类型变量,编译时会报错,即使这个值没有超出long类型的取值范围long l = 1.0D;除非使用强制类型转换long l=(long) 1.0D;注意:未带有字符后缀标识的整数默认为int类型;未带有字符后缀标识的浮点数默认为double类型。String 是引用类型 不属于四类八种基础数据类型中的一个,切记切记 往往面试的时候 面试官会问道这个问题而且频率很高。在Java中的int类型只适用于数值计算, 而Integer是类,可以应用于任何需要类的地方。Integer的应用场景包括:•int类型因为默认值为0,而Integer默认值为NULL,所以如果没有赋值的话,Integer是可以看出来的,而int类型无法区分int=0和未赋值两种情况,应用场景为JSP中表单数据的表示和Hibernate中对数据库中数据的表示。
•Integer是对象,比如我可以在List, Map中存储Integer。这会比较方便。因为List,Map的基本类型都为object。•Integer中还包括Integer.MAX_VALUE, Integer.MIN_VALUE等数据和class类型的object类型的类型转换的类。比如: static int parseInt(String s), long longValue()2 double,float类型操作double类型(8字节)和float类型(4字节)都是进行浮点数操作,1.234默认是double类型,1.234F才是float类型。但是在进行金融计算时候不适合出现舍入误差,而float类型在操作的时候会经常出现误差,比如0.9 - 0.1 != 0.8。而是0.79999995。所以这个时候应该使用BigDecimal。
BigDecimal的用法的好处:
import java.math.*;
public class Libai
{ public static void main(String args[]){ BigDecimal volumn = new BigDecimal("0");
for (int i=0; i<5; i++){ volumn = volumn.add(new BigDecimal("1"));
volumn = volumn.divide(new BigDecimal("2")); } System.out.print(volumn); } }
//最后结果为:0.96875
- 黑马程序员【android】Java的数据类型的学习笔记二
- 黑马程序员-Java的反射学习笔记
- 黑马程序员--学习日志2--Java的数据类型和语法
- 黑马程序员——Java的数据类型
- 黑马程序员-JAVA学习笔记-基本数据类型及其转换
- Java学习笔记(二)之Java的数据类型
- 黑马程序员---java学习笔记之java基础加强二
- 黑马程序员-枚举,数据类型-学习笔记
- 黑马程序员-C其它数据类型-学习笔记
- 黑马程序员_对于Java高新技术的学习笔记
- 黑马程序员--学习笔记--java常见的英语单词
- 黑马程序员Java学习笔记__javaBean的内省机制
- 黑马程序员-----Java代理机制的学习笔记
- 黑马程序员学习笔记 Java的三大框架
- 黑马程序员-------- Java抽象和接口的学习和笔记
- 黑马程序员-学习笔记1-java程序的特性
- 黑马程序员_Java常量、变量、数据类型和运算符的学习笔记
- 黑马程序员-数据类型、变量作用域和数据结构的学习笔记
- CSU_1674_KSwapOperation
- ubuntu下部分pdf文件不能显示中文
- Android Studio中res下创建layout-large文件夹无法显示问题
- UISearchBar 修改占位符的放大镜
- 【实例】小球运动,像皮筋那样
- 黑马程序员【android】Java的数据类型的学习笔记二
- 【深入理解JAVA虚拟机】之垃圾收集器与内存分配策略
- 没有免费的午餐定理
- IT蓝豹 Animator 动画学习
- TCP的发送系列 — tcp_sendmsg()的实现(一)
- B. Preparing Olympiad
- Apache 让域名不带www,也可以访问到网站首页
- B树 平衡多路查找树
- 0010.Scala单例对象、伴生对象