- 博客(7)
- 收藏
- 关注
原创 堆
堆是一种特殊的完全二叉树;在完全二叉树的基础上,堆的双亲结点一定大于(小于)或者等于对应子节点的值,因此堆的根节点一定是堆中最大或者最小的结点,分别称这两种情况下的堆为大根堆或小根堆;堆的性质和完全二叉树很类似,例如按照层序遍历的方式为堆中的每个节点依次编号,那么1号位置的结点必定是根节点,i大于1时,双亲结点就时i/2,子结点就是2i和2i+1,通过这种条件使得可以很方便的访问到对应下标结点...
2019-11-11 22:52:25
155
原创 栈与队列
1.实现栈的两种方式:数组实现:如果申请的初始化大小太大会造成空间的浪费,如果申请的空间太小则会需要经常扩充空间public class MyStack<T> { private int top;//top指针(数值为下标) private T[] arr;//数组 public MyStack(int size){ top = 0; ...
2019-11-11 18:51:07
128
原创 java内存区域
java内存区域—深入理解Java虚拟机学习笔记程序计数器 program counter register :当前线程所执行的字节码的行号解释器,通过改变这个计数器的值来选取下一条需要执行的字节码指令。如果线程正在执行的是一个Java方法,这个计数器记录的是正在执行的虚拟机字节码指令的地址;如果正在执行的是native方法,这个计数器的值即为null,这个区域不规定内存溢出的情况。线程私有。...
2019-08-02 15:34:38
182
原创 Java对象的虚拟机创建过程
Java对象的虚拟机创建过程---深入理解Java虚拟机学习笔记在创建一个对象时,在语言层面通过new这样的关键字来进行创建,而虚拟机中的对象的底层创建过程要更为复杂和细致。步骤一:类的加载检查当虚拟机遇到new指令时会先去检查后面的参数是不是能在常量池中定位到一个类的符号引用,并检查这个符号引用代表的类是否已经被加载过,若没有,则要先进行类的加载。步骤二:为新生对象分配内存空间...
2019-08-02 15:28:04
203
原创 基本字节流与字符流
IO笔记流:一组有序的字节集合,是数据在两个设备的传输个设备的传输流的本质是数据传输,按照处理数据类型的不同,分为字节流 字符流字节流以字节为单位,8bit ,包含两个抽象类 InputString OutoutString字符流以字符为单位,根据码表映射字符,16bit,包含两个抽象类 Reader Writer(Unicode 中每个字符都使用了多个字节,所以字节流不适用于处理此类信...
2019-03-27 01:01:40
237
原创 Java一维数组与存储空间
Java一维数组:(1)一维数组的定义:int []arr=new int []{1,2,3,4,5};Int []arr= new int[5];int []arr={1,2,3,4,5};(java中可以创建数组长度为零的数组,但0不等同于null)(2)一维数组的遍历:for循环法:for(in t i=0;i<arr,length;i++)System.out .print...
2018-10-24 01:49:39
517
原创 运算符
Java变量定义时不能直接声明变量,而不对变量进行初始化操作。Java 运算符算术运算符:+(加) -(减) *(乘) /(除) %(取余) ++(自加) --(自减)关系运算符:&amp;gt; &amp;lt; == &amp;gt;= &amp;lt;=条件运算符 ?: ,(三目运算符)逻辑运算符:&amp;amp;&amp;amp; (逻辑与) ||(逻辑或)
2018-10-10 00:11:58
196
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人