android studio 编码技巧
29. 列选择/块选择(Column Selection)
- 描述:正常选择时,当你向下选择时,会直接将当前行到行尾都选中,而块选择模式下,则是根据鼠标选中的矩形区域来选择。
- 调用:按住Alt,然后拖动鼠标选择。
- 开启/关闭块选择:Menu → Edit → Column Selection Mode
- 快捷键:切换块选择模式:Cmd Shift 8(OS X)、Shift Alt Insert(Windows/Linux);
30. 语句补全(Complete Statement)
- 描述:这个方法将会生成缺失的代码来补全语句,常用的使用场景如下:
- 在行末添加一个分号,即使光标不在行末;
- 为if、while、for 语句生成圆括号和大括号;
- 方法声明后,添加大括号;
- 调用:Menu → Edit → Compelete Current Statement
- 快捷键:Cmd Shift Enter(OS X)、Ctrl Shift Enter(Windows/Linux);
- 更多:如果一个语句已经补全,当你执行该操作时,则会直接跳到下一行,即使光标不在当前行的行末。
31. 删除行(Delete Line)
- 描述:如果没选中,则删除光标所在行,如果选中,则会删除选中所在的所有行。
- 快捷键:Cmd Delete(OS X)、Ctrl Y(Windows/Linux)
32. 行复制(Duplicate Line)
- 描述:复制当前行,并粘贴到下一行,这个操作不会影响剪贴板的内容。这个命令配合移动行快捷键非常有用。
- 快捷键:Cmd D(OS X)、Ctrl D(Windows/Linux)
33. 编写正则表达式(Edit Regex)
- 描述:使用Java编写正则表达式是一件很困难的事,主要原因是:
- 你必须得避开反斜杠;
- 说实话,正则很难;
- 看第二条。
IDE能帮我们干点啥呢?当然是一个舒服的界面来编写和测试正则啦~ - 快捷键:Alt Enter → check regexp
34. 使用Enter和Tab进行代码补全的差别(Enter vs Tab for Code Completion)
- 描述:代码补全时,可以使用Enter或Tab来进行补全操作,但是两者是有差别的。
- 使用Enter时:从光标处插入补全的代码,对原来的代码不做任何操作。
- 使用Tab时:从光标处插入补全的代码,并删除后面的代码,直到遇到点号、圆括号、分号或空格为止。
35. 提取方法(Extract Method)
- 描述:提取一段代码块,生成一个新的方法。当你发现某个方法里面过于复杂,需要将某一段代码提取成单独的方法时,该技巧是很有用的。
- 调用:Menu → Refactor → Extract → Method
- 快捷键:Cmd Alt M(OS X)、Ctrl Alt M(Windows/Linux);
- 更多:在提取代码的对话框,你可以更改方法的修饰符和参数的变量名。
36. 提取参数(Extract Parameter)
- 描述:这是一个提取参数的快捷操作。当你觉得可以通过提取参数来优化某个方法的时候,这个技巧将很有用。该操作会将当前值作为一个方法的参数,将旧的值放到方法调用的地方,作为传进来的参数。
- 调用:Menu → Refactor → Extract → Parameter
- 快捷键:Cmd Alt P(OS X)、Ctrl Alt P(Windows/Linux);
- 更多:通过勾选“delegate”,可以保持旧的方法,重载生成一个新方法。
37. 提取变量(Extract Variable)
- 描述:这是一个提取变量的快捷操作。当你在没有写变量声明的直接写下值的时候,这是一个很方便生成变量声明的操作,同时还会给出一个建议的变量命名。
- 调用:Menu → Refactor → Extract → Variable
- 快捷键:Cmd Alt V(OS X)、Ctrl Alt V(Windows/Linux);
- 更多:当你需要改变变量声明的类型,例如使用 List 替代 ArrayList,可以按下Shift Tab,就会显示所有可用的变量类型。
38. 内置(Inline)
- 描述:当你开始对提取操作有点兴奋的时候,突然觉得东西太多了,怎么办呢?这是一个和提取相反的操作。该操作对方法、字段、参数和变量均有效。
- 调用:Menu → Refactor → Inline
- 快捷键:Cmd Alt N(OS X)、Ctrl Alt N(Windows/Linux);
39. 合并行和文本(Join Lines and Literals)
- 描述:这个操作比起在行末使劲按删除键爽多了!该操作遵守格式化规则,同时:
- 合并两行注释,同时移除多余的//;
- 合并多行字符串,移除 和双引号;
- 合并字段的声明和初始化赋值;
- 快捷键:Ctrl Shift J;
40. 动态模板(Live Templates)
- 描述:动态模板是一种快速插入代码片段的方法,使用动态模板比较有意思的是你可以使用合适的默认值将模板参数化,当你插入代码片段时,这可以指导你完成参数。
- 更多:如果你知道模板的缩写,就可以不必使用快捷键,只需要键入缩写并使用Tab键补全即可。
- 快捷键:Cmd J(OS X)、Ctrl J(Windows/Linux);