一.Set接口 //HashSet综合举例 import java.util.*; public class Test{ public static void main(String[] args){ Set<Name> s = new HashSet<Name>(); s.add(new Name("Li","Ming")); s.add(new Name("Sun","Lei")); s.add(n…
笔记: //排序真麻烦!没有C++里的好用又方便!ORZ!ORZ!数组排序还还自己写个TreeSet()和( Comparable接口(自然排序) 或者 Comparator接口 (定制排序))import java.util.*; import java.lang.*; /**对象排序 * a.实现Comparable接口 + TreeSet()自定义排序 Student[id,name]数组 * 创建一个Student类,实现Comparable接口 ,实现按id自动降序排序 * (可以直接…
1.程序与用户交互 (1)运行一个Java程序的时候要给它提供一个main方法入口,这边分析一下这个main方法的签名public static void main(String[] args);public修饰符:因为Java类给JVM调用的,所以要使用public修饰符暴露这个方法static修饰符:JVM调用主方法的时候不会先创建该主类的对象,而是直接通过该类来调用主方法的,所以使用static修饰.void返回值:因为主方法是JVM调用的,所以该方法的返回值返回给JVM没有任何意义.字符…
Enumerated Types Basic enum features When you create an enum, an associated class is produced for you by the compiler. This class is automatically inherited from java.lang.Enum. The ordinal( ) method produces an int indicating the declaration order o…
匿名内部类也就是没有名字的内部类.正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写.但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 例1:不使用匿名内部类来实现抽象方法 abstract class Person { public abstract void eat(); } class Child extends Person { public void eat() { System.out.println("Eat something!"); }…
同步和协作工具类 一.读写锁ReentrantReadWriteLock ReadWriteLock接口的定义为: public interface ReadWriteLock { Lock readLock(); Lock writeLock(); } 读操作使用读锁,写操作使用写锁.只有"读-读"操作是可以并行的,"读-写"和"写-写"都不行. 始终只有一个线程能进行写操作,在获取写锁时,只有没有任何线程持有任何锁才可以获取到, 在持有写锁时…
1.根据日志分析,spring junit默认是自动回滚,不对数据库做任何的操作. 18:16:57.648 [main] DEBUG o.s.j.d.DataSourceTransactionManager - Switching JDBC Connection [net.sf.log4jdbc.sql.jdbcapi.ConnectionSpy@481d6644] to manual commit 18:16:57.649 [main] DEBUG o.s.t.c.t.Transaction…
java同步容器 在Java的集合容器框架中,主要有四大类别:List.Set.Queue.Map.List.Set.Queue接口分别继承了Collection接口,Map本身是一个接口.注意Collection和Map是一个顶层接口,而List.Set.Queue则继承了Collection接口,分别代表数组.集合和队列这三大类容器.像ArrayList.LinkedList.HashMap这些容器都是非线程安全的.因此,在编写程序时,必须要求程序员手动地在任何访问到这些容器的地方进行同步处…
Comparable & Comparator 都是用来实现集合中元素的比较.排序的: Comparable 是在集合内部定义的方法实现的排序: Comparator 是在集合外部实现的排序: 所以,如想实现排序,就需要在集合外定义 Comparator 接口的方法或在集合内实现 Comparable 接口的方法. Comparator位于包java.util下,而Comparable位于包java.lang下 Comparable 是一个对象本身就已经支持自比较所需要实现的接口(如 Strin…
1.容器(Collection)也称为集合, 在java中就是指对象的集合. 容器里存放的都只能是对象. 实际上是存放对象的指针(头部地址): 这里对于八种基本数据类型,在集合中实际存的是对应的包装类! 为什么要引出容器呢?java中的数组不是也能满足部分要求? 数组中元素类型必须一致:而且数组长度难以扩充,需要扩充的话,需要把原先的数组复制到一个新的数组,使用System.arraycopy();这样十分耗费CPU资源和内存空间 class A{ private int i; public A…