![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java学习
文章平均质量分 79
藿香正气
这个作者很懒,什么都没留下…
展开
-
Java:什么时候使用Parallel Stream?
原文:When to Use a Parallel Stream in JavaStreams in Java顺序流 Sequential Stream默认,Java中的任何流操作都是顺序执行的,除非特别指定为并行。顺序流是单线程执行的:List<Integer> listOfNumbers = Arrays.asList(1,2,3,4);listOfNumbers.stream().forEach(number -> System.out.println(number +原创 2021-11-29 16:34:29 · 2376 阅读 · 0 评论 -
程序清单-打印一个类的全部信息
这个程序将提醒用户输入类名,然后输入类中所有方法和构造器的签名,以及全部域名。 如:请输入类名:java.lang.Doublepublic final class java.lang.Double extends java.lang.Number{ public java.lang.Double(double); public java.lang.Double(j原创 2017-12-24 18:25:57 · 867 阅读 · 0 评论 -
程序清单-通用的toString方法
一种公认的可供任意类使用的toString方法: (循环引用将会导致无限递归,因此使用visited记录已经被访问过的对象)public class ObjectAnalyzer { private ArrayList<Object> visited = new ArrayList<Object>(); public String toString(Object obj){原创 2017-12-24 22:34:10 · 459 阅读 · 1 评论 -
程序清单-利用反射扩展任意类型的数组
获得a数组对应的类对象Class cl = a.getClass();确认是一个数组if (!cl.isArray()){ return null; }使用Class类的getComponentType方法确定数组对应的类型Class componentType = cl.getComponentType();构造新数组 Object newArray = Array.ne原创 2017-12-24 22:54:22 · 298 阅读 · 0 评论 -
反射
反射是一种功能强大且复杂的机制,反射机制可以用来:在运行中分析类的能力在运行中查看对象实现通用的数组操作代码利用Method对象Class类在程序运行期间,java运行时系统始终为所有对象维护一个被称为运行时的类型标识。这个信息跟踪着每个对象所属的类。虚拟机利用运行时类型信息选择相应的方法执行。可以通过专门的java类访问这些信息,保存这些信息的类被称为Class。 关于Class类的详原创 2017-12-24 16:40:11 · 127 阅读 · 0 评论 -
Arrays
位于*java.uti*l包下 该类提供了操纵数组的许多方法,其中的方法都能扔出NullPointerException。 api:https://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html该类主要包含的方法:asList----将数组转换为list返回sort方法----排序binarySearch----二分查找co原创 2017-12-16 11:23:13 · 172 阅读 · 0 评论 -
多线程学习
实现多线程的方式1.implements Runnablepublic class MyRunnable implements Runnable { public void run() { System.out.println("实现了Runnable接口,当线程启动时就会调用run()"); } public static void main(String[]原创 2017-12-17 01:28:11 · 192 阅读 · 0 评论 -
Java Timer
1、简介Timer和TimerTask都是在后台调度任务的java工具类。 简言之: TimerTask--要做的什么事 (What) Timer--什么时候做(When) JavaAPI:Timer & TimerTask2、关于Timer在工具类 Timer 中,提供了四个构造方法,每个构造方法都启动了计时器线程。**Timer()***Creates a原创 2017-12-27 22:30:13 · 147 阅读 · 0 评论 -
ReentrantLock
Java5.0增加了一种新的机制:ReentrantLock。当内置加锁机制不适应时,ReentrantLock作为一种可选择的高级功能。Lock与ReentrantLockLock提供了一种无条件的、可轮训的、定时的以及可中断的锁获取操作,所有的加锁和解锁的方式都是显示的。 Lock 的接口定义:public interface Lock { void lock(); void原创 2017-12-28 22:49:39 · 126 阅读 · 0 评论