Java基础
justLym
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
jsoup使用教程
jsoup是一款Java的html解析工具,主要是对html和xml文件进行解析在写爬虫的时候,当我们用HttpClient之类的框架,得到目标网页的源码后,需要从网页源码中取得我们想要的内容。就可以使用jsoup轻松获取想要的内容。jsoup的中文开发文档获取jsoup的maven方式<!-- https://mvnrepository.com/artifact/org.jsoup...原创 2020-04-23 22:12:39 · 17595 阅读 · 6 评论 -
Java零拷贝问题
概述零复制(英语:zero-copy;也叫做零拷贝)技术是指计算机执行操作时,cpu不需要先将数据从某处内存复制到另外一个特定区域。这种技术通常通过网络传输文件时节省CPU周期和带宽。传统IO传输模型传统IO分析在Java当中IO存在这三个对象,一个是user space用户空间,一个是kernel space内核空间,还有一个是hardware磁盘对象当jvm发起了一次读取事件时,...原创 2020-04-20 17:48:43 · 611 阅读 · 0 评论 -
HashMap如何添加元素详解
Map接口结构map接口是一个双边队列,拥有key,value两个属性,其中key在存储的集合中不允许重复,value可以重复。MapHashMapLinkedHashMapHashtable实现map接口实现map接口继承HashMap实现map接口MapHashMapLinkedHashMapHashtableHashMap特点存储结构在jdk1.7当中是数组加链表的结构,在jdk1...原创 2020-03-16 14:18:15 · 6858 阅读 · 10 评论 -
Java流NIO
什么是NIOJava NIO(NEW IO)是从Java1.4开始引入的新版IO,用来替代标准的Java IO APINIO于原来的IO有相同的功能,但是他们之间的使用方式是完全不同的,NIO是面向缓冲区,面向通道的的IO操作,NIO拥有更加高效的进行文件读写。另外NIO在网络编程可以是一个无阻塞的IO交互,可以大大提升Socket交互的效率。NIO于IO的区别IONIO...原创 2020-03-14 15:27:19 · 881 阅读 · 10 评论 -
jdk1.8新特性Stream流
概述Stream流完全不是I/O流,按照流水线处理方式来考虑代码中的思想。JDK1.8 之后,我们拥有了Lambda表达式,让代码的中心偏向解决实际问题,直到重点,可以提高效率。Stream流中使用了大量Lambda表达式,利用Lambda操作方式,提供开发效率在我们进行数据处理时有很大的帮助获取Stream流的三种方式数组int[] arr = {1, 2, 3, 4, 5};A...原创 2020-03-12 20:22:50 · 716 阅读 · 0 评论 -
JDK1.8新特性函数式接口
概述对于只有一个抽象方法的接口,需要这种接口的对象,就可以提供一个lambda表达式。这种接口称为函数式接口(functional interface)。在定义函数式接口的时候可以加入@FunctionalInterface注解来修饰该接口@Documented@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.TYPE)pub...原创 2020-03-11 20:52:25 · 495 阅读 · 11 评论 -
Java8特性lambda表达式和方法引用
lambda表达式简介lambda表达式是一个传递的代码块,可以在以后执行一次或者多次。这个特性是JDK1.8之后的特性。lambda表达式使用场景在jdk中有一个Arrays.sort()方法用来对数组进行排序,在没有用lambda表达式之前我们一般用匿名内部类来传递比较条件,但是出现lambda表达式之后,这个就可以替换掉了。import java.util.Arrays;impor...原创 2020-03-11 19:25:09 · 663 阅读 · 12 评论 -
Java注解Annotation
概述Java语言中的类、方法、变量、参数和包等都可以被标注。和Javadoc不同,Java标注可以通过反射获取标注内容。在编译生成类文件时,标注可以被嵌入到字节码中。Java虚拟机可以保留标注内容,在运行时可以获取到标注内容。 当然它也支持自定义Java标注JDK1.5之后的特征用于说明程序一般在框架中使用格式:@AnnotationName文档注释:@param @return ...原创 2020-03-10 21:13:53 · 683 阅读 · 5 评论 -
Java内部类 inner class
为什么使用内部类内部类(inner class)是定义在另外一个类中的类。为什么需要使用内部类呢?主要有一下三点:内部类方法可以访问该类定义所在的作用域中的数据,包括私有数据。内部类可以对同一个包的其他类隐藏起来。当像要定义一个回调函数且不想编写大量代码时,使用匿名(anonymous)内部类比较便捷使用内部类访问对象状态内部类既可以访问自身数据域,也可以访问创建它的外围对像的数据...原创 2020-03-06 22:41:27 · 319 阅读 · 0 评论 -
Java基础反射reflect
概述能够分析类能力的程序成为反射reflective。反射机制的功能及其强大,再下面可以看到,反射机制可以用来:在运行时分析类的能力在运行时查看对象,例如,编写一个toString()方法供所有类使用。实现通用的数组操作代码。利用Method对象,这个对象很像C++中的指针函数。Class类在程序运行期间,Java运行时系统始终为所有的对象维护一个被称为运行时的类型标识。这个信息...原创 2020-03-05 20:41:52 · 1073 阅读 · 12 评论 -
Java所有类的超类Object
概述Object类是Java中所有类的始祖,在Java中每个类都是由它扩展而来的。如果没有明确指出超类,Object被默认是这个类的超类。Object的用途可以使用Object类型的变量引用任何类型的变量public void demo() { Object object = new Employee();}当然Object类型变量只能作为各种值的持有者,如果想要对其中的内容进行...原创 2020-02-25 00:21:38 · 775 阅读 · 0 评论 -
Java数据结构 -- 链表
生活中的链表链表其实是一个一环扣一环的东西,最简单明了的就是我们的链子了,它就是一个一环扣一环的东西链表介绍链表在内存中的图解可以用下图来表示链表是以节点的方式存储,是一个链式存储。每个节点都有一个data域,和一个next域。链表的内存空间可能是不连续的。链表有带头节点和不带头节点两种,具体使用哪一种视情况而定。单链表的代码书写单链表的数据模型单链表书写这里我们...原创 2020-02-22 16:41:19 · 584 阅读 · 5 评论 -
Java数据结构---队列
首先我们来看一个队列在实际生活中的场景我们在银行办理业务,是不是会看到这样一种场景,有一队人正整齐的排着队,在窗口前,等待办理业务,其实这就是队列在实际应用中的一个体现。队列的特点队列的是Java数据结构中的一种,它的一个有序的 列表 ,可以使用数组或者链表来实现。遵循先进先出的原则,先存入的数据会先被取出来,后存入的数据会后取出来队列的形式单向队列环形队列数组模拟单向队列...原创 2020-02-10 22:34:55 · 614 阅读 · 0 评论 -
Java数据结构----稀疏数组
我们先看一个实际的需求:编写一个五子棋盘程序,并存在退出后存盘功能和续上盘的功能。解决方案方案一:将这个棋盘模拟成一个二维数组,将数据存储起来。方案二:使用稀疏数组,将棋盘存储起来,并达到一个数据压缩的效果。解决方案优劣势分析方案一:优势: 简单方便,代码简单。劣势: 造成数据冗余,有很多不必要的数据存储下来了。方案二:优势:节省储存空间劣势:代码稍微复杂一些...原创 2020-02-09 12:34:40 · 540 阅读 · 0 评论 -
Java条件判断和循环
Java是目前很流行的web端开发语言,而条件判断和循环结构是Java一个很重要的部分,下面简单介绍Java常用的条件判断和循环结构。条件判断语句if判断语句public class Demo { public static void main(String[] args) { if (/*判断条件*/) { // 逻辑代码块 } }}if-else判断语句p...原创 2020-02-08 20:52:11 · 779 阅读 · 4 评论
分享