- 博客(53)
- 收藏
- 关注
原创 新特性
JAVA 8 Lambda 表达式依赖与函数式接口https://www.runoob.com/java/java8-lambda-expressions.htmlJava的函数式接口https://blog.youkuaiyun.com/lkforce/article/details/98744598方法引用https://www.cnblogs.com/wuhenzhidu/p/107270...
2019-11-09 17:59:18
187
原创 枚举类 接口里加入方法
枚举概述指将变量的值一一列出来,变量的值只限于列举出来的值的范围内。举例:一周只有7天,一年只有12个月等。只有枚举项的枚举类public enum 枚举类名 {枚举项1,枚举项2,枚举项3…;}自定义枚举类public abstract class Direction3 { // 创建几个实例 public static final Direction3 FRONT = ne...
2019-11-06 22:29:34
769
1
原创 反射
类加载器 反射 动态代理类的加载当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。加载就是指将class文件读入内存,并为之创建一个Class对象。任何类被使用时系统都会建立一个Class对象。连接验证 是否有正确的内部结构,并和其他类协调一致准备 负责为类的静态成员分配内存,并设置默认初始化值解析 将类的二进制数据中的...
2019-11-05 21:30:44
169
原创 网络编程
网络编程概述网络编程三要素UDP编程TCP编程网络编程概述网络编程就是用来实现网络互连的不同计算机上运行的程序间可以进行数据交换。网络模型计算机网络之间以何种规则进行通信,就是网络模型研究问题。网络模型一般是指OSI(Open System Interconnection开放系统互连)参考模型TCP/IP参考模型 TCP/IP参考模型...
2019-11-03 17:36:04
161
原创 多线程 2
为了更清晰的表达如何加锁和释放锁,JDK5以后提供了一个新的锁对象LockLockvoid lock()void unlock()ReentrantLockprivate Lock lock = new ReentrantLock(); // 定义票 private int tickets = 100; // 定义锁对象 private Lock lock = new Re...
2019-10-29 17:40:37
159
原创 多线程 一
多线程概述多线程实现方案线程调度和线程控制线程生命周期线程同步死锁线程间通信定时器的使用多线程概述多线程概述进程:正在运行的程序,是系统进行资源分配和调用的独立单位。每一个进程都有它自己的内存空间和系统资源。线程:是进程中的单个顺序控制流,是一条执行路径一个进程如果只有一条执行路径,则称为单线程程序。一个进程如果有多条执行路径,则称为多线程程序。Java程序运行原...
2019-10-28 17:12:02
289
原创 IO 4 数据输入输出流 内存操作流 打印流 随机访问流 合并流 序列化流 Properties集合 NIO
可以读写基本数据类型的数据(字节流)*数据输入流:DataInputStreamDataInputStream(InputStream in)数据输出流:DataOutputStreamDataOutputStream(OutputStream out)private static void read() throws IOException { // DataInputStream...
2019-10-23 00:01:50
259
原创 IO 3 练习
复制文本文件字符流 有5中方法 public static void main(String[] args) throws IOException { String srcString = "c:\\a.txt"; String destString = "d:\\b.txt"; // method1(srcString, destString); // method2(sr...
2019-10-20 20:41:08
268
原创 IO流 3 转换流
转换流概述OutputStreamWriter 字符输出流public OutputStreamWriter(OutputStream out) 需要字节流 转换为字符流publicharsetNamec OutputStreamWriter(OutputStream out,Strin...
2019-10-20 19:50:30
137
原创 IO流2 IO
IO流概述IO流用来处理设备之间的数据传输上传文件和下载文件Java对数据的操作是通过流的方式Java用于操作流的对象都在IO包中IO流分类按照数据流向输入流 读入数据输出流 写出数据按照数据类型字节流字节流的抽象基类:InputStream ,OutputStream。字符流字符流的抽象基类:Reader , Writer。字节流写数据 OutputStream...
2019-10-17 14:41:51
161
原创 io流 1 File类
File类的概述文件和目录路径名的抽象表示形式构造方法public File(String pathname) 根据一个路径得到File对象public File(String parent,String child) 根据一个目录和一个子文件/目录得到File对象public File...
2019-10-15 15:15:44
154
原创 异常
异常概述异常:异常就是Java程序在运行过程中出现的错误。异常分类异常处理方案try…catch…finally 捕获throw throws 抛出 定义功能方法时,需要把出现的问题暴露出来让调用者去处理。那么就通过throws在方法上标识。Throwable中的方法getMessage()获取异常信息,返回字符串。toString()获取异常类名和异常信息,返回字符串...
2019-10-14 16:22:25
155
原创 常用类 集合工具类 Collections类
Collections类概述针对集合操作 的工具类Collections成员方法 都是静态方法。public static void sort(List list) 排序 默认情况下是自然顺序。 可以通过重写Comparator<>()来实现自定义排序// 排序 // 自然排序 // Collecti...
2019-10-12 16:18:53
141
原创 常用类 MAP接口 有标签得集合类 练习
/* ArrayList集合嵌套HashMap集合并遍历。 需求: 假设ArrayList集合的元素是HashMap。有3个。 每一个HashMap集合的键和值都是字符串。 元素我已经完成,请遍历。 结果: 周瑜---小乔 吕布---貂蝉 郭靖---黄蓉 杨过---小龙女 令狐冲---任盈盈 林平之---岳灵珊 */public class ArrayListInc...
2019-10-12 15:53:14
167
原创 常用类 MAP接口 有标签得集合类 Treeap类 键是红黑树结构,可以保证键的排序和唯一性
TreeMap类概述键是红黑树结构,可以保证键的排序和唯一性 // 创建集合对象 TreeMap<Student, String> tm = new TreeMap<Student, String>( new Comparator<Student>() { @Override public int compare(Student s1...
2019-10-12 15:28:17
190
原创 常用类 MAP接口 有标签得集合类 LinkedHashMap类 哈希表和链接列表实现自动排序
LinkedHashMap:是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。由哈希表保证键的唯一性由链表保证键盘的有序(存储和取出的顺序一致)无特殊方法...
2019-10-12 15:26:37
135
原创 常用类 MAP接口 有标签得集合类 HashMap类 键是哈希表结构 Hashtable类
HashMap类概述键是哈希表结构,可以保证键的唯一性无特殊方法
2019-10-12 15:25:19
109
原创 常用类 MAP接口 有标签得集合类
Map接口概述Map接口概述将键映射到值的对象一个映射不能包含重复的键每个键最多只能映射到一个值(键值不可重复)Map接口和Collection接口的不同Map是双列的,Collection是单列的Map的键唯一,Collection的子体系Set是唯一的Map集合的数据结构值针对键有效,跟值无关Collection集合的数据结构是针对元素有效Map集合的功能概述:1:...
2019-10-12 15:22:47
114
原创 常用类 Collection子类 set接口 TreeSet类 有序和唯一性
TreeSet类概述使用元素的自然顺序对元素进行排序或者根据创建 set 时提供的 Comparator 进行排序具体取决于使用的构造方法。TreeSet是如何保证元素的排序和唯一性的底层数据结构是红黑树(红黑树是一种自平衡的二叉树)TreeSet:能够对元素按照某种规则进行排序。排序有两种方式A:自然排序(元素具备比较性) 让元素所属的类实现自然排序接口 Comparab...
2019-10-10 14:21:36
246
原创 常用类 Collection子类 set接口 HashSet类概述 无序,不可重复的Collection 和LinkedHashSet类 有序,不可重复的HashSet类
HashSet:它不保证 set 的迭代顺序;特别是它不保证该顺序恒久不变。HashSet:存储字符串并遍历问题:为什么存储字符串的时候,字符串内容相同的只存储了一个呢?底层数据结构是哈希表(元素是链表的数组)*哈希表依赖于哈希值存储通过查看add方法的源码,我们知道这个方法底层依赖 两个方法:hashCode()和equals()。步骤: 首先比较哈希值 如果相同,继...
2019-10-10 14:13:37
242
原创 常用类 Collection子类 set接口概述 无序,不可重复的Collection
Set接口概述一个不包含重复元素的 collection。HashsetTreeset
2019-10-10 13:54:32
453
原创 常用类 Collection子类List类的子类 LinkedList类 数据结构链表 查询慢 增删快 线程不安全 效率高 有序 可重复
LinkedList类概述底层数据结构是链表,查询慢,增删快线程不安全,效率高LinkedList的特有功能: A:添加功能 public void addFirst(Object e) public void addLast(Object e) B:获取功能 public Object getFirst() public Obejct ...
2019-10-08 14:09:12
304
原创 常用类 Collection子类List类的子类 Vector类 数据结构数组,查询快,增删慢 线程安全,效率低 有序 可重复
Vector类概述及使用Vector类概述底层数据结构是数组,查询快,增删慢线程安全,效率低Vector类特有功能1:添加功能 public void addElement(Object obj) -- add()2:获取功能 public Object elementAt(int index) -- get() public Enumeration ele...
2019-10-08 14:02:49
282
原创 常用类 Collection子类List类的子类ArrayList类 数据结构 数组 查询快 增删慢 线程不安全 效率高 有序 可重复
ArrayList类概述ArrayList类概述底层数据结构是数组,查询快,增删慢线程不安全,效率高 // 创建集合对象 ArrayList array = new ArrayList(); // 创建学生对象 Student s1 = new Student("武松", 30); Student s2 = new Student("鲁智深", 40); St...
2019-10-08 13:59:05
257
原创 集合 Collection子类List类 有序(存储和取出的元素一致),可重复的。
List接口概述有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。与 set 不同,列表通常允许重复的元素。List接口成员方法拥有父类所有方法void add(int index,E element) 在指定位置添加元素E remove(int ...
2019-10-06 16:09:15
1397
原创 集合类 Collection接口概述
Collection接口概述Collection 层次结构中的根接口。Collection 表示一组对象,这些对象也称为 collection 的元素。一些 collection 允许有重复的元素,而另一些则不允许。一些 collection 是有序的,而另一些则是无序的。Collection接口成员方法boolean add(E e) ...
2019-10-06 15:55:05
169
原创 集合类概述
为什么出现集合类?面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,Java就提供了集合类。数组和集合类同是容器,有何不同?数组虽然也可以存储对象,但长度是固定的;集合长度是可变的。数组中可以存储基本数据类型,集合只能存储对象。集合类的特点集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象。...
2019-10-06 15:12:06
170
原创 常用类 Calendar类
Calendar类概述及其方法Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。成员方法public static Calendar getInstance() 获取当前的日历时间public int g...
2019-10-05 18:16:05
169
原创 常用类 Date类 DateFormat类
Date类概述及其方法Date类概述类 Date 表示特定的瞬间,精确到毫秒。构造方法public Date() 根据当前的默认毫秒值创建日期对象public Date(long date) 根据给定的毫秒值创建日期对象成员方法public long getTime() 获取时间,以毫秒为单位...
2019-10-05 18:11:26
221
原创 常用类 BigDecimal类
BigDecimal类概述及其构造方法由于在运算的时候,float类型和double很容易丢失精度,演示案例。所以,为了能精确的表示、计算浮点数,Java提供了BigDecimal可以解决数据丢失问题。BigDecimal类概述不可变的、任意精度的有符号十进制数。构造方法public BigDecimal(String val)BigDecimal类成员方法public Big...
2019-10-05 17:44:18
138
原创 常用类 BigInteger类
BigInteger类概述及其构造方法BigInteger类概述可以让超过Integer范围内的数据进行运算构造方法public BigInteger(String val)BigInteger类成员方法public BigInteger add(BigInteger val) 加public BigInteger subtract(BigInteger val) 减pub...
2019-10-05 16:01:15
197
原创 常用类 System类
System类概述及其成员方法System类概述System 类包含一些有用的类字段和方法。它不能被实例化。成员方法public static void gc() 运行垃圾回收器。public static void exit(int status) 终止当...
2019-10-05 15:58:06
121
原创 常用类 Random类
Random类概述及其构造方法Random类概述此类用于产生随机数如果用相同的种子创建两个 Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。构造方法public Random() 没有给种子,用的是默认种子,是当前时间的毫秒值public Random(long seed) ...
2019-10-05 15:52:25
132
原创 常用类 Math
Math类概述及其成员方法Math类概述Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。成员方法public static int abs(int a) 绝对值public static double ceil(double a) 向上...
2019-10-05 15:47:46
146
原创 正则表达式
正则表达式概述及基本使用正则表达式:是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。举例:校验qq号码.1:要求必须是5-15位数字2:0不能开头//不使用正则表达式public static boolean checkQQ(String qq) { boolean flag = true; // 校验长度 if (qq.length() >...
2019-10-05 15:40:02
140
原创 常用类 Character类
Character类概述及其构造方法Character类概述Character 类在对象中包装一个基本类型 char 的值此外,该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然构造方法public Character(char value)Character类成员方法public static boolean isUpperCase(...
2019-10-04 15:53:30
216
原创 基本类型包装类
基本类型包装类概述将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据。常用的操作之一:用于基本数据类型与字符串之间的转换。基本类型和包装类的对应byte Byteshort Shortint Integerlong Longfloat Floatdouble Double...
2019-10-04 15:47:19
143
原创 数组排序 和查找 以及Arrays类
A 冒泡排序相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处int[] arr = { 24, 69, 80, 57, 13 }; System.out.println("排序前:"); printArray(arr);bubbleSort(arr); System.out.println("排序后:"); printArray(arr); }//冒泡排...
2019-10-04 15:32:16
544
原创 常用类 StringBuffer类
StringBuffer类概述及其构造方法StringBuffer类概述我们如果对字符串进行拼接操作,每次拼接,都会构建一个新的String对象,既耗时,又浪费空间。而StringBuffer就可以解决这个问题线程安全的可变字符序列StringBuffer和String的区别?String:是对象不是原始类型.为不可变对象,一旦被创建,就不能修改它的值.对于已经存在的Strin...
2019-10-04 15:03:24
210
原创 常用类 String
String类概述及其构造方法String类概述字符串是由多个字符组成的一串数据(字符序列)字符串可以看成是字符数组字符串是常量,一旦被赋值,就不能被改变。字符串内容为空和字符串对象为空。 String s = ""; String s = null;构造方法public String() ...
2019-10-02 16:04:49
306
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅