慎用重载_2
摘要:看一个重载造成的恶果:List list=new ArrayList(); for(int i=-3;i<3;i++){ list.add(i); } for(int i=0;i<3;i++){ list.remove(i); } System.out.println(list);结果:[-2, 0, 2]神马情况?竟然不是[-3,-2,1]。原因就是List的remove方法有两个重载remove(E)和remove(int)。而remove(int)是删除第几个...
阅读全文
慎用重载_1
摘要:对象的运行时类型并不影响“哪个重载版本将被执行”;选择工作是在编译时候进行的,完全基于参数的编译时类型。看个例子先:package com.wjy.multithread;public class MainTest { public static void show(int a){ System.out.println("Integer"); } public static void show(double a){ System.out.println("Double"); } public static voi...
阅读全文
ByteBuffer和String的互相转换
摘要:import java.nio.ByteBuffer; import java.nio.CharBuffer; import java.nio.charset.Charset; import java.nio.charset.CharsetDecoder; public class TopNTool { /** * String 转换 ByteBuffer * @param str * @return */ public static ByteBuffer getByteBuffer(String str) {...
阅读全文