- 博客(29)
- 收藏
- 关注
原创 手写数据库连接池(java)
手写数据库连接池(java)我前几天学习了数据库连接池的基本内容,自己尝试着写了一个连接池并导出jar包使用,虽然实现了连接池的基本功能,但也存在一些问题。以下是我连接池的目录结构:配置文件内容:#驱动路径driver=com.mysql.jdbc.Driver#JDBC连接URLurl=jdbc:mysql://127.0.0.1:3306/exercise?characterE...
2019-04-11 22:47:16
1415
原创 深入理解HashMap
深入理解HashMapHashMap的存储结构是数组加链表,默认数组长度为16.HashMap的put原理为:根据key值获得hash值,再根据hash值和数组长度确定对应数组索引位置(按位与运算),如果不同的key映射到了数组的同一位置处,就将其头插入对应的单链表。HashMap的get原理为:通过hash获得数组位置后遍历该位置对应的链表由于HashMap的发明者认为,后插入的En...
2019-03-20 21:35:20
352
原创 单例模式
单例模式定义一个类只有一个实例对象简介意图保证一个类仅有一个实例,并提供一个访问它的全局访问点主要解决问题一个全局使用的类频繁的创建与销毁何时使用控制实例数目,节省系统资源如何实现判断系统是否已有这个单例,如果有,直接返回,如果没有,创建单例优点在内存里只有一个实例,减少了内存的开销避免对共享资源的多重占用缺点没有接口不能继承使用场景...
2019-01-14 20:59:52
369
原创 ArrayList和LinkedList的异同点
ArrayList和LinkedList的异同点对ArrayList类的分析:添加链接描述对LinkedList类的分析:添加链接描述通过对ArrayList类和LinkedList类的分析,可以总结出ArrayList和LinkedList的异同点如下:相同点:数据特征相同:类中数据可重复,插入有序,可以有多个null值继承关系相同:均直接或间接继承了AbstractList类,...
2018-11-21 18:20:47
936
1
原创 LinkedList类
LinkedList类LinkedList特点:数据重复性:数据可重复数据有序性:保证插入数据的有序性null值问题:可以有多个null值底层数据结构:private static class Node<E>{ E item; Node<E> next; Node<E> prev; Node(Node<E> prev, E ele...
2018-11-21 17:41:54
403
原创 ArrayList类
ArrayList类ArrayList特点:数据重复性:数据可重复数据有序性:保证插入数据的有序性null值问题:可以有多的null值底层数据结构:数组(自增长)继承关系:public class ArrayList&lt;E&gt; extends AbstractList&lt;E&gt; implements List&lt;E&gt;, RandomAccess, Clone.
2018-11-21 15:07:21
540
原创 java集合框架下的主要接口
java集合框架下的主要接口在java集合框架下主要有两类接口,分别是Collection接口和Map接口。其中,Collection接口主要包括List接口,Set接口和Queue接口。接口特点:下面是各个接口的源码: Collection接口源码:package java.util;public interface Collection<E> extends Iter...
2018-11-20 21:37:46
407
原创 Iterator,ListIterator与Enumeration接口
Iterator,ListIterator与Enumeration接口Iterator接口与ListIterator接口都是迭代器接口,Enumeration接口是枚举接口。三个接口均位于java.util包下。三个接口均属于设计模式,即提供了一个方法,能够对集合或容器内的元素进行遍历,而不用关注底层实现细节,达到了数据与上层遍历解耦的目的。先看下三个接口的源码:Iterator接口...
2018-11-20 15:33:20
302
原创 Java集合框架简介
Java集合框架简介所谓的框架就是一个类库的集合。集合框架就是一个用来表示和操作集合的统一的架构,它包含了实现集合的接口与类。集合框架中不同的集合类有各自不同的数据结构,所以在使用中要根据应用性能要求来选择不同的集合类。集合类存放在java.util包中。一:集合框架图二:集合中类或接口的分析方法1.存储数据的特征(数据重复性,数据有序性,null值问题)2.底层数据结构,继承...
2018-11-20 15:28:54
202
原创 Arrays.copyOf()和System.arraycopy()两种拷贝方式的区别及效率分析
Arrays.copyOf()和System.arraycopy()两种拷贝方式的区别及效率分析首先,我们看一下Arrays.copyOf()和System.arraycopy()的jdk源码(jdk1.7):Arrays.copyOf()源码:public static <T> T[] copyOf(T[] original, int newLength) { ...
2018-11-06 22:30:57
4018
1
原创 迷宫游戏(图形化界面)
迷宫游戏本程序的功能为实现迷宫游戏。打开游戏,系统弹出游戏菜单界面。玩家可以选择开始游戏,游戏设置,退出游戏。玩家选择开始游戏时,系统自动生成一个规格为10*10,入口为左上角,出口为右下角且从入口到出口仅有一条有效路径的迷宫,当玩家找到路径后,系统会自动提示玩家已经成功走出迷宫,并重新打开游戏菜单界面。玩家选择游戏设置时,可从键盘输入迷宫规格,迷宫入口,迷宫出口,若玩家放弃设置,可点击返回菜单...
2018-10-26 20:36:42
6550
3
原创 判断出栈序列
判断出栈序列一.栈的特点先进后出,后进先出二.出栈序列的特点1.从栈顶开始依次取出若干元素(不大于栈中总元素个数)组成一个有序数列2.出栈序列必是一个或多个上述有序数列的按序排列三.判断是否为出栈序列1.已知条件a.原始序列(数组) startb.已知的出栈序列(数组) end2.准备条件a.原始序列数组下标 sb.已知出栈序列数组下标 ec.入栈函数 pu...
2018-10-20 09:24:33
2139
原创 java异常
java异常一:异常的概念1.什么是异常异常指的是程序运行时出现的非正常情况。可能导致程序发生非正常情况的原因有很多,如数组下标越界、算术运算被0除、空指针访问、试图访问不存在的文件等。2.异常的类层次(常见)二:异常的处理结构Java 异常处理通过 5 个关键字 try,catch,finally,throw 和 throws 进行管理Java 中处理异常有两种方式:捕获异常、...
2018-09-21 21:32:54
469
原创 迷宫游戏代码(java语言编写)
迷宫游戏题目描述: 用0和1组成一个矩形矩阵,0代表当前位置可走,1代表当前位置不可走。 eg: 0 0 0 0 1 0 1 0 1 0 0 0 1 1 1 0 实现功能: 1.创建迷宫 2.选择迷宫入口和出口 3.搜索从迷宫入口到迷宫出口的所有路径,输出(路径用2表示) 如上例,寻找从迷宫左上角到右下角的路径,结果如下: 第一条: 2 2...
2018-09-09 21:13:06
8878
11
原创 猜拳游戏代码(java编写)
猜拳游戏实现功能: 1.定义电脑类,玩家类 2.可以添加玩家,选择玩家进行游戏 3.游戏分为人机游戏和双人游戏两种模式 4.玩家可以设定每轮游戏局数,每局游戏均显示猜拳结果,系统根据结果为玩家积分,胜出玩家获得一积分。 5.每轮游戏结束,显示玩家积分,系统根据玩家积分判断玩家输赢。 6.每轮游戏结束,玩家可以继续开始新一轮游戏,也可以退出游戏。//电脑...
2018-09-07 20:59:41
12615
2
原创 java运算符
java运算符java运算符 算术运算符 eg: int a = 10; int b = 20; int c = 25; int d = 25; System.out.println("a + b = " + (a + b) ); System.out.println("a - ...
2018-08-07 19:14:07
293
原创 java基本数据类型
java基本数据类型java数据类型java基本数据类型和引用数据类型的区别基本数据类型转换规则隐式类型转换当小类型数据存放在大类型变量当中时,会发生隐式类型转换,或者说当精度低的数据类型存放到精度高的数据类型变量当中时,会发生隐式类型转换。eg:class TestDemo{ public static void main(String[] ...
2018-08-05 17:43:51
246
原创 顺时针打印矩阵(java语言编写)
顺时针打印矩阵public class Exercise { public static void main(String[] args) { // TODO Auto-generated method stub int matrix[][]=new int [][]{{1,2,9,3,4},{2,7,3,4,5},{3,5,4,5,6},{4,5,4...
2018-08-03 09:56:57
239
原创 打印倒三角(java语言编写)
打印倒三角 eg: 输入: 6 输出: 1 1 1 1 2 1 1 3 2 1 1 4 3 2 1 1 5 4 3 2 1 import java.util.Scanner;public class Exercise { public static void main(String[] args) { // TODO Auto-gen...
2018-08-03 09:53:25
980
原创 打印菱形(java语言编写)
打印菱形import java.util.Scanner;public class Exercise{ public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc=new Scanner(System.in); int ...
2018-08-03 09:45:36
749
原创 删除数组中的重复项
定义一个整型数组,里面含有重复项,将该数组中重复出现的整数只保留一个,其余的删除。public class Exercise{ public static void main(String[] args) { // TODO Auto-generated method stub int arr[]=new int []{5,5,5,5,5,5,5,5,...
2018-08-03 09:38:55
523
原创 输出所有的水仙花数(java语言编写)
输出所有的水仙花数 所谓水仙花数是指一个3位数,其各种数字立方和等于该本身,例如:153是一个水仙花数。public class Exercise { public static void main(String[] args) { // TODO Auto-generated method stub for(int i=100;i<1000;...
2018-08-02 20:48:21
6635
1
原创 n是由键盘输入,例如:n=5; 输出S=5+55+555+5555+55555
n是由键盘输入,例如:n=5; 输出 S=a+aa+aaa+aaaa+aaaaaimport java.util.Scanner;public class Exercise { public static void main(String[] args) { // TODO Auto-generated method stub int n,m; ...
2018-08-02 20:42:20
5728
原创 输入两个正整数m和n,求其最大公约数和最小公倍数
输入两个正整数m和n,求其最大公约数和最小公倍数import java.util.Scanner;public class Exercise { public static void main(String[] args) { // TODO Auto-generated method stub int m,n; Scanner...
2018-08-02 20:34:12
1008
原创 判断闰年(java语言编写)
输入一个年份,判断该年是不是闰年 若一个年份是闰年,则该年份能被4整除,但是不能被100整除,或者该年份能被100整除的同时也能被400整除。import java.util.Scanner;public class Exercise5 { public static void main(String[] args) { // TODO Auto-generat...
2018-08-02 20:24:24
1459
原创 判断素数(java语言编写)
输入一个正整数,判断它是不是一个素数import java.util.*;public class Exercise { public static void main(String[] args) { // TODO Auto-generated method stub int a; System.out.println("请输入一...
2018-08-02 20:15:20
5567
原创 猜数字小游戏
猜数字小游戏:随机输入一个数(1~1000中的随机数)当前输入的数字和该随机数进行比较,如果当前数值>随机数,打印“输入的数字较大”,继续猜,当前数值<随机数,打印“输入的数字较小”,继续猜,如果当前的数值==随机数,打印“猜正确了”猜的次数只有10次,如果超过10次,显示”猜数字结束,是否继续”.如果输入“是”,那么新的一轮猜数字游戏开始了.输入“否”,那么游戏结束打印“再...
2018-07-30 15:50:22
442
原创 java初学必备基础知识
今天,第一次开通了自己的博客,内心还是有点小激动的,今后,我也可以在自己的博客里发布自己的文章,也可以看到好友发表的文章,了解大家的动态了。现在,我先发表一篇文章,平复一下激动的心情。...
2018-07-28 19:59:50
293
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人