
数据结构/Java
文章平均质量分 65
潇潇的潇
Be myself!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
二叉树——先序遍历(递归/非递归)
在二叉树的先序、中序和后序这三种遍历方式中,所谓的“先”、“中”和“后”都是相对于“根节点”来说的, 因此,先序遍历,即遍历顺序为:根节点、左节点、右节点。二叉树节点:public class Node { public Node left; public Node right; public int val; public Node(int dat原创 2018-01-04 15:41:17 · 15865 阅读 · 2 评论 -
Java虚拟机基础知识汇总 (二)
继Java虚拟机基础知识汇总 (一)对JVM的类加载器进行了简单概述,本博客主要是关于运行时数据区的问题。1. JVM运行时数据区JVM在执行Java程序时都会把内存划分为几个不同的数据区域,这几个数据区域各自的作用是不同的,JVM运行时数据区的组成和结构如下图所示:jvm运行时数据区分为堆和栈两种类型,其中堆区为线程共享区,而栈区则为线程私有区。 堆区分为堆和方法区,栈区分原创 2018-01-29 16:28:56 · 433 阅读 · 0 评论 -
Java虚拟机基础知识汇总 (一)
本文总结了我在学习过程中遇到的JVM相关知识,都是最基本的介绍,作为自我总结,也希望能对看到本博客的你带来帮助~1. Java虚拟机Java虚拟机(Java Virtual Machine,JVM)是一种能够运行Java字节码的虚拟机,它有完善的硬件架构和相应的指令系统。 Java字节码是Java虚拟机执行的一种指令格式,Java源文件经过编译器,能够被编译成被Java虚拟机执行的字节码文件。下图原创 2018-01-28 18:10:29 · 578 阅读 · 0 评论 -
多线程——线程的几种状态 (Java API版)
以前学习操作系统这门课程的时候,对线程状态的学习是比较粗略的,仅限于表面的了解,在后续学习和使用的过程中, 我发现自己之前的认知与Java api中定义的线程状态是有出入的,在使用过程中也会有很多误解, 所以按照java.lang.Thread.State中的详细定义和说明,进行了如下整理,作为自我总结和学习。根据Java api,Java中线程一共有如下6种状态,即NEW、RUNNABL原创 2018-01-31 17:44:58 · 1507 阅读 · 0 评论 -
Java的内存泄漏和垃圾回收机制
Java的垃圾回收(Garbage Collection,GC)机制是JVM提供的重要功能之一,能够自动检测对象是否已经没有任何引用, 从而自动释放不在使用的对象所占用的内存空间,避免引发内存泄漏,但是该机制并不能完全避免内存泄漏情况的发生。1. 内存泄漏定义:指由于疏忽或错误造成程序未能释放已经不再使用的内存,即由于不再使用的对象持续占用内存或者占用的内存得不到及时释放,造成内存空原创 2018-01-28 23:28:30 · 605 阅读 · 0 评论 -
Java IO——简介
一直搞不太懂java里的io问题,感觉java.io里面的类很多、很复杂而且很混乱,每次进行文件读写时都会费好多脑筋, 毕竟java里的文件读写是避免不了的=.=,写着写着自己也就明白了~java io流的分类(两类):根据数据流向分为:输入流和输出流,其中的“输入”和“输出”是相对于内存而言的;输入流用于把数据读取到内存中,输出流则相反。根据数据单位分为:字节流和字符流,它们的区别如下:字节原创 2018-01-15 21:53:31 · 372 阅读 · 0 评论 -
解析xml文件——简介
XML:Extensible Markup Language,可扩展标记语言,主要用于简化数据的存储和共享,它独立于硬件、软件以及应用程序。 xml文件是符合xml语法的文档,它是一个从根节点到子节点的树形结构,由元素构成,元素可以嵌套,元素中可以包含属性和文本内容,元素命名对大小写敏感,参考http://www.w3school.com.cn/xml/。对xml文件的解析,Java中xml原创 2018-01-14 23:04:11 · 522 阅读 · 0 评论 -
解析xml文件——dom4j
继解析xml文件——简介,在xml文件的4种解析方式中,在不考虑大型文档的前提下DOM4J方式性能最佳,也最容易实现。xml文件: root att1="测试" att2="解析xml"> child att1="a" att2="你"> subChild att1="b" att2="好"> node att1="c" att2=原创 2018-01-15 16:46:06 · 289 阅读 · 0 评论 -
Java IO——文本增、删、查
继Java IO原创 2018-01-15 23:29:04 · 363 阅读 · 0 评论 -
Java解析Excel文件(.xlsx和.xls格式均适用)
简介:Excel文件的解析与读取普通的文本文件不同,就像xml文件的解析,最常用的Java4J方式也是jar包支持的, 根据apache官方文档:http://poi.apache.org/spreadsheet/index.html,“Also please be aware that as the new XSSF supported Excel 2007 OOXML (.xlsx) f原创 2018-01-17 16:30:20 · 132495 阅读 · 34 评论 -
二叉树——中序遍历(递归/非递归)
中序遍历,即遍历顺序为:左节点、根节点、右节点。二叉树节点:public class Node { public Node left; public Node right; public int val; public Node(int data){ this.val = data; }}1. 递归方式思想同二叉原创 2018-01-04 20:37:45 · 14197 阅读 · 1 评论 -
Java内存模型与多线程
继 Java虚拟机基础知识汇总 (二),在此基础上,进一步介绍Java的内存模型及其和并发编程的关系。在并发编程中,非常重要的两个问题是:线程间如何通信,通信是用于控制不同线程间信息交换的机制;线程间如何同步,同步是用于控制不同线程间操作发生相对顺序的机制。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。 线程之间同步常用的方式有:使用Synchromized关键原创 2018-01-29 22:45:03 · 467 阅读 · 0 评论