
Java
文章平均质量分 88
It一zhai男
Android,kotlin,Java,flutter,python,
展开
-
学习整理01-java将汉字转换为拼音
学习整理01-java将汉字转换为拼音java 代码:package com.example.test;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.转载 2016-06-07 19:38:20 · 342 阅读 · 0 评论 -
【ArrayList源码】contains源码及使用
1 contains源码 /** * Returns <tt>true</tt> if this list contains the specified element. * More formally, returns <tt>true</tt> if and only if this list contains ...原创 2019-07-20 23:17:45 · 732 阅读 · 0 评论 -
【ArrayList源码】lastIndexOf源码及使用
1 lastIndexOf源码 /** * Returns the index of the last occurrence of the specified element * in this list, or -1 if this list does not contain the element. * More formally, returns the...原创 2019-07-21 23:43:16 · 370 阅读 · 0 评论 -
【设计模式】单一职责原则
以下内容来自《Java设计模式》1 单一职责原则单一职责原则是最简单的面向对象设计原则,它用于控制类的粒度大小。单一职责原则的定义如下:单一职责原则:一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类中。单一职责原则的另一种定义方式:就一个类而言,应该仅有一个引起它变化的原因。在软件系统中,一个类(大到模块,小到方法)承担的职责越多,它被复用的可能性越小,而且一个类承担的责...原创 2019-07-30 22:00:35 · 418 阅读 · 0 评论 -
【设计模式】依赖倒转原则
【设计模式】依赖倒转原则以下内容来自【Java设计模式】如果说开闭原则是面向对象设计的目标,那么依赖倒转原则就是面向对象设计的主要实现机制之一,它是系统抽象化的具体实现。依赖倒转原则是Robert C. Martin在1996年为C++Reporter所写的专栏Engineering Notebook 的第三篇,后来加入到他在2002年出版的经典著作 Agile Software Devel...原创 2019-08-03 19:33:29 · 279 阅读 · 0 评论 -
【ArrayList源码】get源码及使用
1 get源码 /** * Returns the element at the specified position in this list. *返回列表中指定位置的元素 * @param index index of the element to return * @return the element at the specified pos...原创 2019-07-22 20:18:04 · 619 阅读 · 0 评论 -
【设计模式】开闭原则
以下内容来自《Java设计模式》1 开闭原则开闭原则是面向对象的可复用设计的第一块基石,它是最重要的面向对象设计原则。开闭原则由Bertrand Meyer于1988年提出,其定义如下:开闭原则:软件实体应当对扩展开放,对修改关闭。在开闭原则的定义中,软件实体可以指一个软件模块,一个由多个类组成的局部结构或一个独立的类。开闭原则就是指软件实体应尽量在不修改原有代码的情况下进行扩展。任...原创 2019-07-31 20:37:55 · 345 阅读 · 0 评论 -
【ArrayList源码】remove源码及使用
1 remove源码在ArrayList源码里,remove有两个方法,一个是按照索引index移除元素,另一个是按照值移除元素。 /** * Removes the element at the specified position in this list. * Shifts any subsequent elements to the left (subtract...原创 2019-07-26 22:17:46 · 1426 阅读 · 0 评论 -
【LinkedList源码】LinkedList的构造方法源码及用法
1 LinkedList构造方法LinkedList继承自AbstractSequentialList类,实现了List、Deque、Cloneable和Serializable接口。linkedList有两个构造方法,一个是无参构造方法,一个是有一个参数的构造方法。构造方法源码如下所示:/** * Constructs an empty list. */ publ...原创 2019-07-27 23:43:50 · 1228 阅读 · 0 评论 -
【ArrayList源码】ArrayList构造方法
文章目录ArrayList简介1 无参构造方法2 一个参数的构造方法,参数为初始的容量3 参数为集合的构造方法ArrayList简介ArrayList称为数组链表,它是继承AbstractList,并实现了List、RandomAccess、Cloneable和Serializable接口public class ArrayList<E> extends AbstractList...原创 2019-07-12 15:18:48 · 3459 阅读 · 0 评论 -
【Thread源码】join源码及使用
1 join源码/** * Waits for this thread to die. *等待当前线程死亡(指的是主线程等待当前线程死亡) * <p> An invocation of this method behaves in exactly the same * way as the invocation * * &l...原创 2019-07-18 21:13:47 · 208 阅读 · 0 评论 -
【ArrayList源码】add方法(自动扩容)
1 add源码解析在【ArrayList源码】ArrayList构造方法中,ArrayList无参构造方法默认是一个空数组,但注释说是容量为10的数组。其实ArrayList的容量是在调用add方法时初始化的。add方法是List接口中声明的通用方法。ArrayList的add源码如下所示:/** * Appends the specified element to the end ...原创 2019-07-16 11:52:50 · 1823 阅读 · 1 评论 -
Java数据结构——线性表归并
Java数据结构——线性表归并题目:已知线性表LA和LB中的数据元素按值非递减有序排列,现要求将LA和LB归并为一个新的线性表LC,且LC中的数据元素仍按值非递减有序排列。例如,设 LA=(3,5,8,11) LB=(2,6,8,9,11,15,20) 则原创 2016-10-26 12:19:01 · 1481 阅读 · 0 评论 -
Java数据结构——线性单链表的实现
Java数据结构——线性单链表的实现一、描述 线性表的链式存储结构的特点:用一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的,也可以是不连续的)。因此它没有顺序存储结构所具有的弱点(顺序存储结构插入数据或删除数据都要移动大量的数据),但同时也失去了顺序表可随机存取的优点。单链表的组成为:数据信息和指向下一个节点的指针。二、源码2.1 节点信息Node.javapackage com原创 2016-10-26 16:44:45 · 1404 阅读 · 0 评论 -
Java数据结构——线性表的顺序存储实现
Java数据结构——线性表的顺序存储实现一、描述 线性结构特点: (1)存在唯一的一个被称作“第一个”的数据元素 (2)存在唯一的一个被称作“最后一个”的数据元素 (3)除第一个之外,集合中的每个数据元素均只有一个前驱 (4)除最后一个之外,集合中的每个数据元素均只有一个后继线性表:是n个数据元素的有限序列。一般有两种存储结构:线性表的顺序存储结构和线性表的链式存储结构。线性表的顺序表示:原创 2016-10-25 20:08:11 · 1649 阅读 · 0 评论 -
【ArrayList源码】indexOf源码及使用
1 ArrayList的indexOf方法ArrayList的indexOf源码如下:/** * Returns the index of the first occurrence of the specified element * in this list, or -1 if this list does not contain the element. * ...原创 2019-07-13 23:45:36 · 1735 阅读 · 0 评论 -
【Java】线程创建的四种方式
文章目录1 前言2 创建线程的四种方式2.1 实现Runnable接口创建Thread2.2 实现Callable接口来创建Thread线程2.3 继承Thread类来创建线程2.4 使用Executor框架来创建线程池1 前言线程创建线程的方法一般可以分为四类:通过实现Runnable接口来创建Thread线程通过实现Callable接口来创建Thread线程通过继承Thread类...原创 2019-06-29 16:29:05 · 138 阅读 · 0 评论 -
【Java】Java中的==
Java中的==Java中的==表示的是什么呢?有时候很令人费解。比如,以下例子输出是什么? // 例一 String str = "wo"; String str1 = "wo"; System.out.println("例一:" + (str == str1)); // 例二 String str2 = new String("wo"); String str3...原创 2019-07-14 21:47:08 · 13608 阅读 · 4 评论 -
【Java源码】String中的equals方法
本文基于JDK1.81 String中equals源码分析String是final类型,它不可被继承。String的equals方法如下所示: /** * Compares this string to the specified object. The result is {@code * true} if and only if the argument is...原创 2019-07-14 22:26:29 · 704 阅读 · 0 评论 -
【Java】List源码一
List是一个接口,继承自Collection,数据类型是泛型。public interface List<E> extends Collection<E>{}size()返回的是int类型,返回的数据表示链表的长度,如果链表中数据的长度超过Integer.MAX_VALUE,那么返回的数值为Integer.MAX_VALUE。int size();...原创 2019-07-11 21:27:55 · 230 阅读 · 0 评论 -
【设计模式】里氏代换原则
里氏代换原则里氏代换原则由2008年图灵奖得主、美国第一位计算机科学女博士、麻省理工学院的Barbara Liskov(芭芭拉-利斯科夫)教授和卡内基-梅隆大学的Jeannette Wing教授于1994年提出,里氏代换原则以Barbara Liskov教授的姓氏命名。其严格表述如下:如果对每个类型为S的对象o1都有类型T的对象o2,使得以T定义的所有程序P在所有的对象o1都代换o2时程序P的行...原创 2019-08-01 21:04:23 · 447 阅读 · 0 评论