package amazonGroupJiannanVersionInput; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; public class test { public static void main(String[] args) throws IOException{ ScheduleRequestInputStream testIn = new ScheduleRequestInputStream(); HashMap<String,Integer> contentScoreMap = new HashMap<String,Integer>(); HashMap<String,Integer> locationValueMap = new HashMap<String,Integer>(); ScheduleRequestWriter scheduleRequestsOut = new ScheduleRequestWriter(); ScheduleRequest sc1 = new ScheduleRequest(“a”, “1”, 2, 0, 2); ScheduleRequest sc2 = new ScheduleRequest(“b”, “1”, 2,… Read Article →

merge sort detail http://blog.csdn.net/javyzheng/article/details/38637525 bsf,dfs,dp区别,好处

package basicTest; import java.util.AbstractSequentialList; import java.util.Collection; import java.util.Comparator; import java.util.ConcurrentModificationException; import java.util.Deque; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.ListIterator; import java.util.NoSuchElementException; public class MyLinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, java.io.Serializable { private transient Entry<E> header = new Entry<E>(null, null, null); private transient int size = 0; public Entry<E> mergeSort(Entry<E> head) { if(head ==… Read Article →

http://www.hawstein.com/posts/google-java-style.html 注释模版二: /** * Description :       带参数构造函数, *                       初始化模式名,名称和数据源类型 * @param schema:   模式名 * @param name:   名称 * @param type: 数据源类型 */   5、方法注释: 方法注释采用 /** …… */,对于设置 (Set 方法 ) 与获取 (Get 方法 ) 成员的方法,在成员变量已有说明的情况下,可以不加注释;普通成员方法要求说明完成什么功能,参数含义是什么且返回值什么;另外方法的创建时间必须注释清楚,为将来的维护和阅读提供宝贵线索。 6、方法内部注释: 控制结构,代码做了些什么以及为什么这样做,处理顺序等,特别是复杂的逻辑处理部分,要尽可能的给出详细的注释。 7、 全局变量注释: 要有较详细的注释,包括对其功能、取值范围、哪些函数或者过程存取以及存取时注意事项等的说明。 8、局部(中间)变量注释: 主要变量必须有注释,无特别意义的情况下可以不加注释。 9、实参/参数注释: 参数含义、及其它任何约束或前提条件。 10、字段/属性注释: 字段描述,属性说明。 11、常量:常量通常具有一定的实际意义,要定义相应说明。

ctrl+m代码窗口最大化 Ctrl + Shift + F,把缩进都给你格式化好 Control-/: 对一行注释或取消注释。对于多行也同样适用。 ctrl+.及ctrl+1:下一个错误及快速修改 ctrl+.将光标移动至当前文件中的下一个报错处或警告处。这组快捷键我一般与ctrl+1一并使用,即修改建议的快捷键。新版Eclipse的修改建 议做的很不错,可以帮你解决很多问题,如方法中的缺失参数,throw/catch exception,未执行的方法等等。 测试程序运行时间 //伪代码 long startTime=System.currentTimeMillis();   //获取开始时间 doSomeThing();  //测试的代码段 long endTime=System.currentTimeMillis(); //获取结束时间 System.out.println(“程序运行时间: “+(end-start)+“ms”);

在main里面测试 ArrayList<Integer> list = new ArrayList<>(); list.add(0); TestStatic t = new TestStatic(list); System.out.println(t.list); 代码 public class TestStatic { static ArrayList<Integer> list = new ArrayList<>(); public TestStatic(ArrayList<Integer> list) { this.list = list; list.add(1); } } 输出[0,1] 如果没有this.list = list; 输出[],因为改变的是TestStatic这个函数输入的list,没有维护这个变量,而可以被public访问到的变量list是空的 如果改成 {this.list.add(1);}输出是1,因为改的是public可以访问到的list,从[]变成1,与输入的argument无关。 但是有没有static都没有影响。 ============================= static的用法 一: class A{ static int v = 0; void A(int n){… Read Article →

http://6924918.blog.51cto.com/6914918/1283761 总结: str = str + “world”时候, 实际执行 str = new String(new StringBuffer(str).append(“world”)) 每次new StringBuffer时候,就新建了一个区域储存 ====== objlist.add(o1) obj o3 = objlist.get(0) obj o4 = new o4 = objlist.get(0) o3,o4都跟o1存的地址一样,两种initialize方式没有区别,说明两种方法都是new了一个新的空间,存放了o1的地址。 objlist.get(0)里面存放的地址根据指令变化 比如空list,add o1,则objlist.get(0)返回o1地址; 接着remove o1,加入o2,则objlist.get(0)返回o1地址; 接着加入o3,remove o2,则则objlist.get(0)返回o3存的地址,即o1的地址 System.out.println(“the first item in list “+ objlist.get(0)); System.out.println(“the list “+ objlist); 两者返回地址一样,说明arraylist新建了一个空间,里面存的地址是第一个item的地址。 ==== ArrayList<obj> objlist = new ArrayList<>(); obj… Read Article →

http://arthur503.github.io/blog/2013/10/10/Java-data-containers-arraylist.html http://arthur503.github.io/blog/2013/10/10/Java-data-containers-linkedlist.html   http://jm-blog.aliapp.com/?p=322

http://blog.sina.com.cn/s/blog_9d88a5770101gsf4.html 注意点1:只有try块是必须的,也就是说如果没有try块,则不可能有后面的catch块和finally块; 注意点2:catch块和finally块都是可选的,但catch块和finally块至少出现其中之一,也可以同时出现; 注意点3:可以有多个catch块,捕获父类异常的catch块必须位于捕获子类异常的后面; 注意点4:不能只有try块,既没有catch块,也没有finally块; 注意点5:多个catch块必须位于try块之后,finally块必须位于所有catch块之后。 除非在try块或者catch块中调用了退出虚拟机的方法(即System.exit(1);),否则不管在try块、catch块中执行怎样的代码,出现怎样的情况,异常处理的finally块总是会被执行的。不过,一般情况下,不要再finally块中使用renturn或throw等导致方法终止的语句,因为一旦使用,将会导致try块、catch块中的return、throw语句失效 ======================================================== http://www.hongyanliren.com/869.html http://www.uml.org.cn/j2ee/201302285.asp规范 Java声明异常 http://blog.csdn.net/hamber_bao/article/details/6503870 http://bbs.csdn.net/topics/350230556   待看 http://blog.csdn.net/microtong/article/details/4967744 http://www.zhihu.com/question/28254987 http://sunflowers.iteye.com/blog/767175 http://www.hongyanliren.com/869.html   java其他 待看 http://www.open-open.com/lib/view/open1331472289140.html http://www.open-open.com/lib/view/open1324736648468.html http://www.open-open.com/lib/view/open1426123622763.html

Scroll To Top