java语言的一些小语法

原始类型空指针

Integer a=null;

if(a==0)会抛出空指针

Map隐含添加冲突

Iterator是工作在一个独立的线程中,它会建立一个索引表,当原来数据发生改变时,索引表不会发生改就,就会抛出java.util. ConcurrentModificationException 异常。

容易发生问题:Mapput方法,意愿是想修改,但如果key不存在就有问题了。

集合大小隐含冲突

for(int  i=0;i<blockQueue.size();i++){

     aList.add(blockQueue poll());

}

集合转数组

(String[])pins.toArray(new String[0])

ThreadLocal

ThreadLocal可用来传值,输入,输出方法参数。但一般并不推荐使用,会加强程序的耦合。

泛型

List<? extends ProductEqual>List< ProductEqual>,如果作为参数一个可传入子类型,一个不可以传入子类型。

String

"".compareTo(null)会有异常

java正则

str = str.replaceAll("\\?", ""); 

classpath

泛型

用点指定当前路径,java -cp .:/opt/datacheck9/datacheck-app-0.0.1-SNAPSHOT.dir/config

就算类不泛型,方法也可以泛型,public <T> T getBean(String beanName)

 

猜你喜欢

转载自guanpanpan.iteye.com/blog/1810817