要熟练掌握比较器Comparator
public final Comparator<T> MY_COMPARATOR = new myComparator(); //定义比较器 ..... public int comparaTo(T t){ ..... } private class myComparator implements Comparator<T>{ public int compare(T v, T w){ return v.comparaTo(w) //compare()是比较器里的重写方法 //一般来说compareTo()是compare()的具体实现方法,但这不是固定的,只是习惯。你可以完全不用compareTo() } }
Week3作业里提到的一些方法或类
- toString()
- draw()和drawTo():画点和画线段
- Comparator
- java.util.Arrays.sort(a, lo, hi)、java.util.Arrays.sort(a, lo, hi, Comparator) ——> 很常用很重要的排序
代码风格:
return new MyClass() { @Override public void method() { if (condition()) { try { something(); } catch (ProblemException e) { recover(); } } } };
- 左大括号前不换行
- 左大括号后换行
- 右大括号前换行
- 如果右大括号是一个语句、函数体或类的终止,则右大括号后换行; 否则不换行。例如,如果右大括号后面是else或逗号,则不换行。
void doNothing() {}
- 一个空块状结构什么也不包含,不需要换行,括号写在一起。
if () { // your code } else if { // your code }
需要空格的地方
- 分隔任何保留字与紧随其后的左括号(()(如if, for catch等)。
- 分隔任何保留字与其前面的右大括号(})(如else, catch)。
- 如果在一条语句后做注释,则双斜杠(//)两边都要空格。这里可以允许多个空格,但没有必要。
- 类型和变量之间:List list。
- 数组初始化中,大括号内的空格是可选的,即new int[] {5, 6}和new int[] { 5, 6 }都是可以的。
需要加强的部分
- API文档的查看
- 编辑器的使用(不会用,心情被搞得好糟糕)
时间: 2024-12-08 06:04:10