加载中
关于多线程的几段代码

import java.util.ArrayList; import java.util.List; public class TestSyncBlock1 { public static void main(String[] args) { List<Thread> list = new ArrayList<Thread>(); for (int i...

03/10 16:12
58
使用 try with resource 时遇到 IDE 报错的问题分析及解决办法

问题描述:为了方便后续对某些 IO 流的操作,我写了某个工具类,里面封装了一个关闭 IO 流的方法。JDK 1.7 之前只能纯手写去封装一块关闭 IO 流的功能代码块,略微麻烦: public static void...

02/21 22:09
405
关于生产者消费者问题的一段代码

import java.util.ArrayList; public class ProducerAndConsumer { public static void main(String[] args) { SyncStack basket = new SyncStack(); Producer p = new Producer(basket); Co...

02/18 22:26
89
关于产生死锁问题的一段代码

public class TestDeadLock implements Runnable { public int flag = 1; static Object o1 = new Object(), o2 = new Object(); public void run() { System.out.println(Thread.currentThr...

02/16 12:06
80
怎样用 Java 字节码指令去理解 JVM 运行时数据区的栈结构

开场白: “掷地铿锵嗟有力,杳无声处见刀光。全凭借,三言两语,便道尽,栈结构”——怎么可能?!>_< 栈其实是个很理论的概念。说理论,是因为栈并不指代内存里某块具体的区域,它只是一种...

02/12 21:56
857
关于线程的一小段程序记录

import java.util.Date; public class TestSleepInterrupt { public static void main(String[] args) { MyThread thread = new MyThread(); Thread t = new Thread(thread); t.start(); try...

02/05 00:55
63
dynamic-connectivity 动态连通性问题之 quick-union 算法

quick-union 的思想是:若对象 p 的 root_id 和对象 q 的 root_id 相等,则认为 p 和 q 连通。 若要将对象 p 和对象 q 连通(已知两对象未连通),则将 p 的 root_id 的值设为 q 的 root_id ...

01/18 01:57
115
Java 简易实现一段字符串的 DES 加密和解密

有时候逛群的时候,总有大神将某句话进行某种算法加密,在群里聊来聊去,我真的特别羡慕,只因为我看不懂>_<!所以我突发奇想,试着写了一个加密解密的小程序,妄图向大神看齐。加解密过程采...

01/14 22:46
292
Java 中对 Serializable 接口和 transient 关键字的理解

首先,我们得知道什么是序列化 (serializable) 众所周知,目前,数据在计算机内存的状态总是趋向于转瞬即逝的(transient),当我们写一段程序,人为的或者非人为的,我们都应将无用的数据...

01/13 23:02
114
dynamic-connectivity 动态连通性问题之 quick-find 算法

问题描述: 如上图,给定一个数组,size = N ,如果 p 和 q 的 id 相等则 p 和 q 连通 对象连通的特性: 1、自反性:p 恒定连通 p 自身。 2、对称性:如果 p 连通 q ,则 q 连通 p 。 3、传递...

01/02 22:18
197
关于HashMap的一个有趣的小程序

import java.util.*; public class TestArgsWords { private static final Integer ONE = new Integer(1); public static void main(String[] args) { Map<String, Integer> m = new HashMap...

2019/12/31 22:49
19
HashSet 的 elements 为何要重写 hashCode() 和 equals() 方法

先看下 HashSet 的存储原理: 比如我们实例化一个 HashSet 对象,然后存入一个元素: Set<Integer> set = new HashSet<Integer>(); set.add(new Integer(250)); 看下 HashSet 类的 构造方法 ...

2019/12/30 02:03
88
Java 枚举类型原理简要分析

问题:枚举是一种特殊的数据类型,一般用来列举有限个、同类型的常量。它能保证参数的安全性,如方法声明传入的参数,必须是指定枚举中的常量。但使用枚举会比使用静态变量多消耗更多的内存,...

2019/12/28 01:28
158
递归展示文件结构目录

代码如下: import java.io.File; public class FileList { public static void main(String[] args) { File f = new File("A"); System.out.println(f.getName()); //根目录 FileList.tree(...

2019/12/27 23:58
60
利用递归思想解决约瑟夫环问题(Java 描述)

先看下在10人成环,逢四去一的情况下,对问题的分析: 10个人手拉手围成一圈,由第一个位置(index = 0)开始报数,数到 4 的人被 kick 出圈外,每次kick一个人,重新编号,又从 index = 0 ...

2019/12/25 00:04
110
Java 二分法查找数组中的某个元素的位置

search的前提一般是排序,也就是说在排好序的队列中,查找才具有一般意义。 代码如下: public class BinarySearch { //搜索是在排好序的基础上进行的 public static void main(String[] arg...

2019/12/24 14:37
59
Java(利用数组模拟双向回环链表)解决数三去一问题

代码如下: public class Count3Quit { public static void main(String[] args) { //初始化数组 int[] arr = new int[500]; for (int i = 0; i < arr.length; i++) { if (i < arr.length .....

2019/12/18 02:07
122
Java(双向回环链表 + 面向对象)解决数三去一问题

代码如下: public class Count3Quit { public static void main(String[] args) { KidCircle kc = new KidCircle(500); Kid k = kc.getFirst(); int countNum = 0; while (kc.getCount() > ...

2019/12/17 22:15
15
Java 中的 abstract、final、static 关键字

一、abstract 1、abstract 可以修饰类和方法(构造方法不行),分别叫做抽象类和抽象方法; 2、抽象类中可以没有抽象方法(一般无意义,抽象类中应该拥有抽象方法),而拥有抽象方法的类必须...

2019/12/02 01:14
15
Java 权限修饰符

修饰符 类内部 同一个包 子类 任何地方 private yes package yes yes protected yes yes yes public yes yes yes yes 权限修饰符主要用来修饰成员变量、方法和类;而类只能用public和package...

2019/11/29 01:39
36

没有更多内容

加载失败,请刷新页面

返回顶部
顶部