Java
方清寒
这个作者很懒,什么都没留下…
展开
-
关于爬虫入门的一些心得(一)
最近研究了一下网络爬虫,用来获取图片网站上的素材。 1、创建URL类的对象URL url = new URL("http://www.mmonly.cc/mmtp/");2、打开url对应的网络流(注意是字节流)InputStream in = url.openStream();3、把字节流转化为字符流(我们能看懂字符..)InputStreamReader is...原创 2018-10-23 15:10:41 · 649 阅读 · 0 评论 -
java可重入锁与不可重入锁
1、不可重入锁public class LockTest01 { private Lock lock = new Lock(); //做一些事情 public void doSomethings() throws InterruptedException { lock.lock(); a(); lock.unlock(); } //在做一些事情 public ...原创 2019-01-29 08:09:33 · 124 阅读 · 0 评论 -
快速排序
快排的核心就是通过partation找到基准元素(即基准元素左边的都比他小,右边的都比他大),并对待排数组进行基本的排序 /** * 快排核心部分 * @param arr 待排数组 * @param low 开始部分 * @param heigh 结束部分 */ private static void quickSort(int[] arr, int low, int...原创 2019-02-15 16:51:25 · 93 阅读 · 0 评论 -
简单选择排序
/** * 选择排序 * @param arr 待排数组 */ public static void selectSort(int[] arr) { int k; for (int i = 0; i < arr.length - 1; i++) { k = i; for (int j = i + 1; j < arr.length; j++) {...原创 2019-02-15 17:24:35 · 134 阅读 · 0 评论 -
冒泡排序
冒泡排序 /** * 冒泡排序 * @param arr 待排数组 */ public static void bubbleSort(int[] arr) { for (int i = 0; i < arr.length - 1; i++) { for (int j = i + 1; j < arr.length; j++) { if (arr[i...原创 2019-02-16 08:16:42 · 81 阅读 · 0 评论 -
直接插入排序
直接插入排序 /** * 直接插入排序 * @param arr 待排数组 */ public static void insertSort(int[] arr) { int t, j; for (int i = 1; i < arr.length; i++) { t = arr[i]; for (j = i - 1; j >= 0 &&...原创 2019-02-16 08:35:00 · 91 阅读 · 0 评论 -
Tomcat启动时命令行乱码
问题 打开Tomcat路径下的conf/logging.properties把原有属性java.util.logging.ConsoleHandler.encoding = UTF-8改为java.util.logging.ConsoleHandler.encoding = GBK再次启动Tomcat问题解决 ...原创 2019-02-16 15:22:03 · 4611 阅读 · 2 评论 -
一个电脑安装多个jdk并可以来回切换
比如我的安装路径配置jdk1.8的环境变量 变量名JAVA_HOME8变量值D:\tool\Java\jdk1.8.0_201 配置jdk1.7的环境变量变量名JAVA_HOME7变量值D:\tool\Java\jdk1.7.0_80注意:一定要删除Path中的C:\Program Files (x86)\Common Files\O...原创 2019-02-16 17:13:28 · 1008 阅读 · 0 评论 -
二叉树的个人理解
二叉树节点/** * 节点 * @author Administrator * */public class Node { /** * 数据 */ public int data; /** * 左孩子 */ public Node leftChild; /** * 右孩子 */ public Node rightChild; ...原创 2018-08-01 15:16:39 · 461 阅读 · 0 评论 -
使用栈遍历二叉树(非递归)
先序遍历 /** * 先序遍历 * 根 左 右 */ @Override public List preOrderTraverse() { List list = new ArrayList(); Deque<Node> stack = new LinkedList(); Node cursor = root; // 根节点 while (!...原创 2019-02-13 10:05:55 · 916 阅读 · 0 评论 -
迪杰斯特拉(dijkstra)算法
上图 核心 // 核心算法 for (int i = 2; i <= n; i++) { // 要加入n-1顶点 // 找距离原点最近的顶点 min = Integer.MAX_VALUE; for (int j = 1; j <= n; j++) { if (book[j] == 0 && dis[j] <...原创 2019-02-14 10:47:12 · 163 阅读 · 0 评论 -
折半(二分)查找
使用迭代实现 /** * 折半查找(二分查找) * @param arr 待查数组 * @param key 待查元素 * @return 索引 */ public static int binarySearch(int[] arr, int key) { int low = 0, heigh = arr.length - 1, mid = 0; for (in...原创 2019-02-14 15:10:21 · 109 阅读 · 0 评论 -
Spring学习——模拟Spring Ioc注解版
Spring学习——模拟Spring Ioc注解版自己模拟的Spring Ioc注解版,加深对Spring底层的了解。这里只支持使用@Autowired注解通过类型进行自动装配。自定义@Component用来给容器中添加组件package com.hrious.core.anno;import java.lang.annotation.ElementType;import java....原创 2019-10-04 22:12:39 · 283 阅读 · 0 评论 -
关于爬虫入门的一些心得(二)
如果基础爬虫都没有明白的话,那么请看我的之前的博客吧——关于爬虫入门的一些心得(一)虽然我们已经可以访问到一些网站了,但是有的直接就给我们pass掉了,所以我们要伪装自己//以http协议方式打开网络流 conn = (HttpURLConnection) url.openConnection(); conn.setConnectTimeout(3000);//与服务器连接的...原创 2019-01-28 22:47:26 · 184 阅读 · 0 评论 -
java复制一个文件夹中所有内容到另一个指定的文件夹中
public static void main(String[] args) { // 指定文件夹路径// copy("D:/code/eclipse-workspace/crawl_dmtp", "D:/copy"); copy("src", "D:/copy"); System.out.println("共移动文件数目:" + size); } /** * 拷...原创 2019-01-16 21:45:01 · 5161 阅读 · 0 评论 -
JavaFX加载图片路径问题
在图片的路径前面加file:就可以了。原创 2018-11-09 13:05:23 · 1878 阅读 · 0 评论 -
eclipse配置javafx开发环境(一)
eclipse配置javafx开发环境转载 2018-11-07 12:30:47 · 4787 阅读 · 0 评论 -
eclipse配置javafx开发环境(二)
之前的哪一种方法是解除javafx与eclipse之间的限制,现在的这种方法是安装javafx插件:第一步:打开Eclipse并在Help 菜单中,然后选择 Install New Software单击进入,之后第二步: 单击Add按钮在Name中输入e(fx)clipse在Location中输入 http://download.eclipse.org/ef...原创 2018-11-10 10:03:28 · 2560 阅读 · 0 评论 -
jdk安装及环境变量配置
1、安装jdk百度搜索,一路默认即可2、配置环境变量配置Java环境变量,右击【我的电脑】---【属性】---【高级】---【环境变量】在系统 变量中新建如下变量变量名JAVA_HOME变量值 D:\tool\Java\jdk1.8.0_201变量名CLASSPATH变量值 .;%JAVA_HOME%\lib\dt.jar;%JAVA_H...原创 2018-11-08 20:08:22 · 118 阅读 · 0 评论 -
java获取internet标准时间
java获取网络时间import java.io.IOException;import java.net.MalformedURLException;import java.net.URL;import java.net.URLConnection;import java.util.Date;import java.util.TimeZone;public class Main...原创 2018-11-14 18:24:02 · 725 阅读 · 0 评论 -
jdk1.8相关文档
JDK1.8 readmeJDK1.8 APIjava 1.8 Documents原创 2018-11-28 11:13:04 · 175 阅读 · 0 评论 -
生产者消费者问题PV操作实现(Java)
import java.util.Scanner;//模拟生产者与消费者案例public class Test { public static void main(String[] args) { int pro, con; Scanner input = new Scanner(System.in); System.out.print("请输入生产者数目:"); pr...原创 2018-12-19 15:32:07 · 2242 阅读 · 0 评论 -
电话亭问题PV操作实现(Java)
import java.util.Scanner;//电话亭案例public class Test { public static void main(String[] args) { int boy, girl; Scanner input = new Scanner(System.in); System.out.print("请输入男生数目:"); boy = inp...原创 2018-12-20 14:12:52 · 298 阅读 · 0 评论 -
理发师问题PV操作实现(Java)
import java.util.ArrayList;import java.util.Scanner;public class Test { public static void main(String[] args) { int customer; Scanner input = new Scanner(System.in); System.out.print("请输入...原创 2018-12-20 15:39:54 · 3805 阅读 · 0 评论 -
读者写者问题PV操作实现(Java)
import java.util.Scanner;//读者写者问题public class Test { public static void main(String[] args) { int wr, re; Scanner input = new Scanner(System.in); System.out.print("请输入写者数目:"); wr = inpu...原创 2018-12-19 10:26:58 · 2457 阅读 · 0 评论 -
eclipse查看jdk原码
第一步:第二步:第三步:第四步:步骤2选择的路径是jdk目录下的src.zip第五步:一路确定点下来就完成了第六步:把鼠标移动到类名或者是方法名上,按住Ctrl,点击进入即可。 做着做着图片上的顺序就忘了,大家见谅哈.....原创 2019-01-13 15:53:44 · 216 阅读 · 0 评论 -
Spring学习——模拟jdk底层动态代理
Spring学习——模拟jdk底层动态代理这里使用最简单的方法实现动态代理,即重新生成一个.java文件使用类加载器加载到内存,这与jdk底层的动态代理有所不同。生成动态代理类的内容通过字符串拼接出动态代理类的内容(强迫症必须要的对齐格式格式)private static String generateProxyContentStr(Class clazz) { Metho...原创 2019-10-05 08:59:25 · 198 阅读 · 0 评论