自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 问答 (1)
  • 收藏
  • 关注

原创 设计模式(一)(单例,简单工厂,模板设计,装饰者,观察者)

设计模式概述和分类(1)设计模式概述设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编写、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性以及代码的结构更加清晰。(2)设计模式分类创建型模式(创建对象的): 单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。行为型模式(对象的功能): 适配器模式、桥接模式、装...

2020-02-27 11:13:55 160

原创 JavaSE——多线程(二)(死锁,等待唤醒机制,内存可见性,CAS算法,sleep()和wait()的异同,线程池,定时器)

1.死锁(1)概述是两个或两个以上的线程在执行的过程中,因争夺资源产生的一种互相等待现象,如果出现了同步嵌套,就容易出现死锁问题。举例:中国人和美国人一起吃饭中国人使用的筷子美国人使用的刀和叉中国人获取到了美国人的刀美国人获取到了中国人的一根筷子那么美国人和中国人都无法将吃饭进行下去(2)代码演示package com.westmo3.demo3;public class...

2020-02-25 16:43:47 213

原创 JavaSE——多线程(一)(进程和线程概念,多线程安全问题,同步代码块,同步方法,Lock锁)

一.线程和进程的概念1.进程概念:进程就是正在运行的程序,是系统进行资源分配和调用的独立单位,每一个进程都有他自己的内存空间和系统资源。多进程的意义:单进程计算机只能做一件事情,而我们现在的计算机都可以一遍玩游戏(游戏进程),一遍听音乐(音乐进程),我们常见的操作系统都是多进程操作系统,例如Windows,Linux等。思考:对于单核计算机来说,游戏进程和音乐进程是同时进行的吗?当然不是...

2020-02-23 18:16:55 192

原创 JavaSE——IO流(四)数据输入输出流,内存操作流,打印流,序列化流,随机访问流,Properties

1.DateInputStream和DateOutputStream(1)概述数据输入流: DataInputStream数据输出流: DataOutputStream特点: 可以写基本数据类型,可以读取基本数据类型。(2)案例演示package com.wetstmo.demo.demo2;import java.io.*;public class MyDemo7 { p...

2020-02-21 22:11:11 201

原创 JavaSE——IO流(三)

字符流概述由于字节流操作中文不是特别方便,所以,java就提供了字符流。1.String类中的编码和解码编码:就是把字符串转换成字节数组, public byte[] getBytes();使用平台的默认字符集将此 String编码为 byte 序列,并将结果存储到一个新的 byte 数组中。 public byte[] getBytes(String charsetName) 使用...

2020-02-20 12:23:03 121

原创 JavaSE——IO流(二)

1.概述及分类(1)概述:IO流用来处理设备之间的数据传输,Java对数据的操作是通过流的方式,Java用于操作流的对象都在IO包中 java.io。(2)分类按照数据流向(站在内存的角度):可以分为输入流(读入数据),输出流(写入数据)。按照数据类型:可以分为字节流和字符流字节流:可以读写任何类型的文件,包括音频,视频,文本文件。字符流:只能读写文本文件(3)IO流基类概述图示...

2020-02-19 22:38:03 119

原创 JavaSE——IO流(一)异常,File文件类

IO流的概述1.概念IO流是用来处理设备之间的数据传输,也就是上传文件和下载文件。2.为什么要先讲解异常和File类?(1)File表示的是IO流将来要操作的文件,所以必须学习File类(2)而常见操作文件无非就是文件上传和文件下载,在这个操作过程中可能出现问题,出现问题后,我们就需要对对应的代码进行处理,所以要学习异常。一.异常1.概述异常就是Java程序在运行过程中出现的错误...

2020-02-17 18:56:47 145

原创 JavaSE——集合(五)Map(HashMap,LinkedHashMap,TreeMap)

一. Map集合1.Map集合存在的意义在生活中,有时候存在向如下这样的数据每个学生都有一个学号,一个学号只能由一个姓名对应,并且学号是不可能重复。在Java中为了方便的存储和使用这类的数据,所以便有了Map集合。2.Map集合的特点(1)Map是双列集合,存储的是键值对,键唯一。(2)每个键最多只能映射到一个值。(3)Map集合的数据结构针对键有效,跟值无关。3.Map集合的...

2020-02-14 13:16:13 362

原创 JavaSE——集合(四)Collections

1.概述java.utils.Collections是集合工具类,对集合进行操作。2.用法public static <T> boolean addAll(Collection<T> c,T......elements):往集合中添加一些元素public static void shuffle(List<?> list):随机打乱集合中元素的顺序pu...

2020-02-11 18:16:21 145

原创 基本排序方式——(六)基数排序

1.基本思想概念基数排序不同于前面的几种排序方式,前面介绍的排序方法或多或少的是通过使用比较和移动来实现排序,而基数排序的实现不需要进行对关键字进行比较,只需要对关键字进行“分配”与“收集”两种操作即可完成。思想采用“桶子法”来实现。准备10个桶子,有两种方法,这两种思想都是一样的。(1)最低位优先法:根据待排序数的个位的数来确定装入哪个桶,装入之后,然后取出,然后再根据...

2020-02-08 16:31:10 346

转载 基本排序方式——(五)归并排序

1. 图示过程(1) 归并排序的流程(2) 合并两个有序数组的流程2. 动图展示3. Java代码实现public static void mergeSort(int[] arr) { sort(arr, 0, arr.length - 1);}public static void sort(int[] arr, int L, int...

2020-02-07 13:01:17 183

原创 基本排序方式——(四)堆排序

一.堆排序的概念堆排序:就是利用堆这种数据结构来进行排序的一种算法思想,它是选择排序的一种,它包括大根堆和小根堆,都是完全二叉树。完全二叉树:除最后一层外,其他每一层都被完全填充,并且所有的结点保持向左对齐。满二叉树:除叶子结点外,每个结点都有两个孩子,每一层都被完全填充。完满二叉树:除叶子结点外每个结点都有两个孩子。大根堆:每个结点的值都大于等于它左右子结点的值小根堆:每个结...

2020-02-05 16:44:39 544

原创 基本排序方式——(三)快速排序

快速排序1.思想(1)选取一个数为基准数(一般是数组的第一个元素)。(2)分区:将数组中比基准数大的放到它的后面,小的放在前面,(可以设置两个游标i,j,i,j分别是数组中首尾元素的下标,程序执行一次,i++,j - -)(3)分好后,然后将这个基准数的左右两个分区再继续执行第二步,直到区内只剩一个元素,可以用递归来解决。举例说明:a[] ={56, 23, 67, 26, 85...

2020-02-05 15:16:39 304

原创 JavaSE——集合(三)Set(HashSet,LinkedHashSet,TreeSet)

1.HashSet概述底层数据结构是哈希表,元素唯一且无序。案例演示package com.westmo1.demo1;import java.util.HashSet;public class MyDemo1 { public static void main(String[] args) { HashSet<String> str...

2020-02-03 21:01:49 157

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除