import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Hashtable;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Random;
import java.util.Set;
import java.util.TreeMap;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class Test {
public static void main(String[] args) throws Exception{
List list = new ArrayList();
List l = new LinkedList();
HashMap m;
Hashtable t;
TreeMap tr; //红黑树
HashSet hs;
int i = (25*3)/2 ;
System.out.println(i);
Integer in;
Properties props = System.getProperties();
Object s = props.get("java.lang.Integer.IntegerCache.high");
System.out.println(s);
Integer i1 = new Integer(2000);
System.out.println(i1 == 2000);
System.out.println(i1.equals(2000));
Student s1 = new Student();
Student s2 = new Student();
System.out.println(s1 == s2);
System.out.println(s1.equals(s2));
String t1 = new String("a");
String t2 = new String("a");
System.out.println(t1 == t2);
System.out.println(t1.equals(t2));
String t11 = new String("a");
String t21 = "a";
System.out.println(t21);
System.out.println(t11.equals(t21));
Map<Student, Object> mp = new HashMap<Student, Object>(); //hashCode()
mp.put(s1, null);
//s2.setId(1);
mp.put(s2, null);
System.out.println(mp.size());
//线程池
ExecutorService executorService = Executors.newSingleThreadExecutor();
Thread th1 = new PrintThread("t1");
Thread th2 = new PrintThread("t2");
Thread th3 = new PrintThread("t3");
Thread th4 = new PrintThread("t4");
Thread th5 = new PrintThread("t5");
executorService.execute(th1);
executorService.execute(th2);
executorService.execute(th3);
executorService.execute(th4);
executorService.execute(th5);
executorService.shutdown();
//
ExecutorService exe = Executors.newFixedThreadPool(1);
Thread ta1 = new PrintThread("ta1");
Thread ta2 = new PrintThread("ta2");
Thread ta3 = new PrintThread("ta3");
Thread ta4 = new PrintThread("ta4");
Thread ta5 = new PrintThread("ta5");
exe.execute(ta1);
exe.execute(ta2);
exe.execute(ta3);
exe.execute(ta4);
exe.execute(ta5);
exe.shutdown();
//
ExecutorService exe2 = Executors.newFixedThreadPool(2);
Thread tb1 = new PrintThread("tb1");
Thread tb2 = new PrintThread("tb2");
Thread tb3 = new PrintThread("tb3");
Thread tb4 = new PrintThread("tb4");
Thread tb5 = new PrintThread("tb5");
exe2.submit(tb1);
exe2.submit(tb2);
exe2.submit(tb3);
exe2.submit(tb4);
exe2.submit(tb5);
exe2.submit(tb5);
exe2.submit(tb5);
exe2.shutdown();
//返回值
ExecutorService exe3 = Executors.newSingleThreadExecutor();
Set<Callable<String>> callables = new HashSet<Callable<String>>();
callables.add(new Callable<String>() {
public String call() throws Exception {
return "Task 1";
}
});
callables.add(new Callable<String>() {
public String call() throws Exception {
return "Task 2";
}
});
callables.add(new Callable<String>() {
public String call() throws Exception {
return "Task 3";
}
});
System.out.println("..");
List<Future<String>> futures = exe3.invokeAll(callables);
System.out.println("....");
for(Future<String> future : futures){
System.out.println("future.get = " + future.get());
}
System.out.println("......");
exe3.shutdown();
//调度
// 创建一个线程池,它可安排在给定延迟后运行命令或者定期地执行。
ScheduledExecutorService pool = Executors.newScheduledThreadPool(2);
// 创建实现了Runnable接口对象,Thread对象当然也实现了Runnable接口
Thread t31 = new PrintThread("s31");
Thread t32 = new PrintThread("s32");
Thread t33 = new PrintThread("s33");
// 将线程放入池中进行执行
pool.execute(t31);
// 使用延迟执行风格的方法
pool.schedule(t32, 1000, TimeUnit.MILLISECONDS);
pool.schedule(t33, 10, TimeUnit.MILLISECONDS);
// 关闭线程池
pool.shutdown();
}
}
class Student {
private int id;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@Override
public boolean equals(Object obj) {
boolean f = false;
if(obj instanceof Student) {
Student s2 = (Student) obj;
if(this.id == s2.getId()) {
f = true;
}
}
return f;
}
@Override
public String toString() {
return String.valueOf(this.id);
}
@Override
public int hashCode() {
return this.id;
}
}
class PrintThread extends Thread{
public PrintThread(String name) {
super(name);
}
public void run() {
int t = new Random().nextInt(1000);
try {
Thread.sleep(t);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(this.getName() + " " + t);
}
}
相关推荐
这套课程既可以作为从零基础开始学习的JAVA基础到高级学习教程,对于有JAVA基础的同学来说可以略过前面的JAVA基础章节,直接学习后续的JAVA高级部分课程。更可以灵活的作为章节技术,进行针对性的JAVA学习。还是要...
Java 基础知识大全 本资源摘要信息是 Java 基础知识大全的总结,涵盖了 Java 语言的基本概念、特点、历史发展等方面的知识点。以下是本资源摘要信息的详细内容: 一、 Java 语言的特点 * 面向对象:Java 语言是...
本文将对《Java 基础入门》课后习题答案进行总结,涵盖了 Java 基础知识点,包括 Java 开发入门、Java 基础类、变量类型、运算符、控制流语句、方法重载等。 一、Java 开发入门 * Java EE、Java SE、Java ME 是 ...
《Java基础入门(第3版)》是一本针对Java初学者的教材,其课后答案文档提供了对书中习题的解答,旨在帮助读者巩固所学知识。Java是一种面向对象的编程语言,具备跨平台性,由Java虚拟机(JVM)负责解释执行。Java...
市面上目前流传的java基础视频教程都是讲一些最基础的java语法和相关API的应用,然而用人单位对初级程序员的要求越来越高,那些讲解java基础语法的视频教程已经无法满足大众的学习要求。本套视频教程录制完中国第一...
《Java基础教程(第3版)_ppt.rar》是一个包含多个PPT文件的压缩包,主要用于教学目的,提供了关于Java编程语言的基础知识。这个资源涵盖了Java的核心概念,从基本的类和对象到高级特性如多线程和数据库操作。以下是...
《Java基础案例教程(第2版)》是一本旨在教授初学者Java编程基础知识的教材,其教学设计旨在通过实例引导学生深入理解Java语言的核心概念。本教程覆盖了从环境搭建到程序设计的各个环节,旨在帮助学生建立起坚实的...
资源名称:Java基础加强系列视频课程资源目录:【】黑马程序员Java基础加强(01-10)【】黑马程序员Java基础加强(11-20)【】黑马程序员Java基础加强(21-30)【】黑马程序员Java基础加强(31-40)【】黑马程序员...
《Java 基础入门》课后习题答案 第 第 1 章 Java 开发入门 一、填空题 1、 Java EE、Java SE、Java ME 2、 JRE 3、 javac 4、 bin 5、 path、classpath 二、选择题 1、ABCD 2、C 3、D 4、B 5、B 三、简答题 1、 面向...
Java基础实例大全适合于初学者 这里是所有Java技术点的集合 每个技术点都有对应的例子。 经典制作不容错过。。。 特别是对Java书籍很迷惑,想看看实际例子的朋友,这里就有你所需要的. Java基础实例大全适合于初学...
【Java基础知识点】 1. **Java的起源与特性** - Java是由SUN Microsystems公司(后被Oracle收购)开发的一种面向对象的编程语言。 - Java有三个主要版本:Java Standard Edition (JavaSE),用于桌面应用;Java ...
"黑马程序员java基础试题、笔记"这个压缩包资源为Java初学者和希望加入"黑马程序员"培训课程的学员提供了丰富的学习材料。这些资源包括面试问题合集、整理的资料、Android面试题、学员入学面试总结、面试技巧、必须...
Java 基础入门,适合初学入门java的同学
Java基础练习题由本人整理并上传,非常适合于初学者加强巩固自己的知识,编程学好的唯一途径就是多练习。
java基础知识的培训ppt,对于java初学者来说可以有一些作用。
java基础的案例分析和实例教学,适合新手及回顾查阅,对于夯实基础有好处
java基础知识,帮助初学者更快更好地掌握java。ppt内容具体易懂,希望对刚接触java的初学者有所帮助。
写的很详细,适合初学者,里面的讲解很丰富,很有学习价值,最好是配套一本详细的JAVA基础一起看,会有更好的效果