java编程
记录java编程功能代码oj
Tronhon
一个正在努力的小开发仔,不定期更新博客内容,喜欢的记得关注我哦!
展开
-
curl -u用户名密码鉴权转httpUtils请求
【代码】curl -u用户名密码鉴权转httpUtils请求。原创 2023-09-08 14:18:50 · 277 阅读 · 0 评论 -
自研HTTP工具类(httpUtil)
【代码】自研HTTP工具类(httpUtil)原创 2022-10-14 09:33:25 · 322 阅读 · 0 评论 -
以get方式传递json字符串问题。
以get方式传递json字符串问题。由于需要,我这边需要以get的方式将一个手动拼接的json串传出去,方便另一方解析接收。直接在jsp中的java代码块进行了拼接。String name="{"+"""+“name”+"""+":"+"""+“lisi”+"""+","+"""+“sex”+"""+":"+"""+“男”+"""+"}";将上边的字符串拼接为json后发送了,接收方却不能解析。后来问了一位朋友得知:通过get方式传递的json数据,传入的参数不能有"或{或},所以需要转码。于是原创 2021-03-03 11:12:36 · 4089 阅读 · 1 评论 -
贪心算法经典题目java实现-版本
1,最优装载问题问题描述:有一批集装箱要装上一艘载重量为c的轮船。其中集装箱i的重 量为wi最优装载问题要求确定在装载体积不受限制的情况下,将尽可能多的集装箱装上轮船。样例数据:MAXWEIGHT 为 30给定8个集装箱,重量分别为:[4, 10, 7, 11, 3, 5, 14, 2]。算法分析这是典型使用贪心算法解决的问题。通过分析题目可以看到,小船的载重量(MAXWEIGHT...原创 2019-12-16 00:41:15 · 973 阅读 · 0 评论 -
数字金额转中文大写(优化版)
题目描述:将阿拉伯数字金额转成中文大写表示优化之后的源代码如下:import java.math.BigDecimal;/** * @author zhenqinl * @date 2019/12/13 * @describe 数字金额转换Api */public class AmountTransApi { private static String[] tmp = ...原创 2019-12-14 10:27:31 · 388 阅读 · 0 评论 -
金额转中文大写源代码(原创)
1,问题描述:将数字金额转成中文大写2,源代码如下public class ZHapi { private static String[] tmp = {"零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"}; public static void main(String[] args){ String endans...原创 2019-12-11 20:49:54 · 799 阅读 · 0 评论 -
Java实现生产者 消费者模式的两种方式带源码
1,使用阻塞队列blockingqueue实现简单的生产者消费者模型原理:阻塞队列BlockingQueue本身就是线程安全,同时使用阻塞队列提供的take,put方法在操作阻塞队列会是使得队列进入阻塞。因此阻塞队列就是线程安全的。基于阻塞队列以上的性质就可以实现线程安全的生产者消费者模型。代码如下:package 比较器java特性;// 此代码中使用了Lambda表达式来作为参数完成...原创 2019-10-29 23:19:05 · 654 阅读 · 0 评论 -
动态规划DP经典题目Java版本
动态规划啊(1)最长公共子序列:package 动态规划;import java.util.Scanner;/** * abcde bcde 4 * @author Administrator * */public class Main最长公共子序列 {public static void main(String[] args) { Scanner cin=...原创 2019-04-11 23:13:45 · 3154 阅读 · 0 评论 -
三个线程顺序执行依次输出123123123.....
题目描述:目前有三个线程t1,t2,t3,,线程分别打印1,2,3,,让我们如何控制线程的同步访问,使得线程依次输出123123123123…的结果。解题思路:使用最简便最实用的信号量Semaphore,通过控制信号的获取以及释放,承接获取锁来实现线程得顺序执行以及临界资源的同步访问。代码如下:package 比较器java特性;import java.util.concurrent...原创 2019-10-31 19:43:45 · 1999 阅读 · 0 评论 -
三个线程依次执行方法总结
1,最普通的运行时, join()方法原理:在t3里面使用join使得t2抢占t3的时间片,类似的在t2里面使用join使得t1抢占t2的时间片。代码如下:package 比较器java特性;public class Main多线程 { public static void main(String[] args) { final Thread t1=new Thread(...原创 2019-10-29 18:10:49 · 955 阅读 · 0 评论 -
JDK8 关于中断线程的总结
1,通过调用stop(),目前已经被抛弃。(1)实现原理调用stop方法之后直接释放线程持有的锁,从而中断线程。(2)抛弃原因通常会比较暴力,可能就会导致很多清理工作未完成。调用stop之后就会直接释放锁,可能会导致数据不同步,导致数据不一致的的问题。2,suspend()方法以及resume()方法这个方法也会导致stop方法出现的问题。因此也被抛弃了。3,调用interrupt(...原创 2019-10-27 22:48:25 · 345 阅读 · 0 评论 -
分布式多线程JVM调优综述
java各种集合的线程安全一,大访问量,高并发网站优化大访问量,高并发网站优化二,几种负载均衡技术的实现【协议层】http重定向协议实现负载均衡【协议层】dns域名解析负载均衡【协议层】反向代理负载均衡【网络层】IP负载均衡负载均衡技术的实现三,分布式的知识redis分布式Redis面试常见问题及知识点归纳四,缓存框架缓存重点知识总结以及分布式缓存框架redis和Memca...原创 2019-12-07 10:59:16 · 211 阅读 · 0 评论 -
java并发编程(显式锁)
一,java5.0之前,调节共享对象的方式只有synchronized(内部锁机制)还有volatile(变量)。之后,引用了ReentranLock锁,他与之前的机制相反,ReentranLock并不是作为内部锁的替代,而是一种全新的锁形式。当内部锁被证明受到局限性时。。采用 ReenrantLock锁 进行可选选择的高级特性实现锁的功能(解决共享对象的访问问题)。二. Lock(接口) 和 ...原创 2019-03-31 10:44:15 · 132 阅读 · 0 评论 -
Java并发编程(线程池)
一,线程池1.名称的意思是,线程池管理的是一个工作者线程的同构池。其中线程池与工作队列密切相关,(工作队列:持有所有等待执行的任务)2.工作者线程的工作变得轻松:每次从工作队列中获取下一个任务,执行它,然后回来继续等待另一个线程。...原创 2019-03-30 17:23:17 · 109 阅读 · 0 评论 -
Java并发编程实践第二天
一,线程安全(原子性以及锁)1.要构建并发程序就要正确使用>线程和加锁。本质是要:编写线程安全的代码,管理对状态的访问,通常是共享的,可变的状态。2.java中首要的同步机制关键字就是synchronized,他提供立独占锁。持此之外 ,“同步还包括volatile变量",显示锁以及原子变量的使用。3.在没有使用synchronized关键字修饰同步机制时,多个线程访问了同一...原创 2019-03-25 13:41:34 · 92 阅读 · 0 评论 -
JAVA并发编程实践第一天
一,进程的介绍1.操作系统的资源:内存,文件的句柄,安全证书。2.进程间的通信方式:socket,信号量,文件,共享内存,信号处理。3.线程允许程序的控制流的多分支同时存在于进程之中。他们共享进程中的资源,比如内存以及文件句柄。但是每一个线程都有自己独立的程序计数器,栈以及本地变量。线程也为多处理器系统中并行的使用硬件提供了自然而然的分解。同一程序内的多线程可以再多个cpu的基础上实现同时...原创 2019-03-25 00:19:35 · 99 阅读 · 0 评论