代码折叠
-
Ctrl+数字加号
展开光标处已折叠代码块 -
Ctrl+数字减号
折叠光标处已展开代码块 -
Ctrl+Shift+数字加号
展开窗口中全部代码 -
Ctrl+Shift+数字减号
折叠窗口中全部代码
注释代码
选中代码示例
第一种注释
快捷键:
Ctrl+/
import java.util.ArrayList; //import java.util.List; // //public class Sandbox { // public List<String> mGreetings = new ArrayList<>(); }
第二种注释
快捷键:
Ctrl+Shift+/
import java.util.ArrayList; import ja/*va.util.List; public class Sandbox { public List<String>*/ mGreetings = new ArrayList<>(); }
代码生成
代码生成能生成各种方法,包括构造函数、getter、setter、equals()、hashCode()、toString等,光标置于类作用域中,通过Alt+Insert
调出如下菜单选择生成相应代码
需要配置忽略成员名称的前缀m和s,配置路径File\Settings\Code Style\Java\Code Generation
示例代码
:
public class Sandbox{
public List<String> mGreetings = new ArrayList<>();
}
生成构造函数
选择Constructor,接着选择一个类成员作为参数,select none选择无参构造函数
getter、setter
Java类通常是经过封装的,类成员通常为私有的,通过访问器getter、设置器setter提供这些成员的共有接口,生成方法名时,生成的代码忽略了m前缀
public class Sandbox {
public List<String> mGreetings = new ArrayList<>();
public List<String> getGreetings() {
return mGreetings;
}
public void setGreetings(List<String> greetings) {
mGreetings = greetings;
}
}
重载方法
假设让Sandbox派生自RectShape(public class Sandbox extends RectShape),按Alt+Insert
选择Override Methods重载Shpae类的hasAlpha()方法
@Override
public boolean hasAlpha() {
return true;
}
从Java 5 版本开始约定使用@Override来注解重载方法,告知编译器同时验证方法的名称和签名,以确保方法被重载
toString()方法
@Override
public String toString() {
return "Sandbox{" +
"mGreetings=" + mGreetings +
'}';
}
代理方法
选择Delegate Methods,选择mGreetings:List,有很多方法可以代理,按住Ctrl多选
插入动态模板
Android Studio的模板是作用域敏感的。
自己创建
导航至File\Settings\Live Templates选择Plain模板组,单击右上角绿色加号并选择Live Templates,填写蓝框三处并点击define,勾选java,点击应用。
选项 | 快捷键 | 描述 |
Insert Live Templates |
| 激活作用域敏感的Live Templates列表,将会在文档中插入模板代码 |
Surround with Live Templates |
| 激活作用域敏感的Surround with Live Templates列表,将会使用一个作用域敏感的动态模板包裹选中内容 |
使用
方法1.输入cb即可使用自己定义的模板
///
//
//
方法2.选中相应内容按Ctrl+Alt+J
,相应内容会作为变量被模板包裹
///
// 我想被注释
//
移动代码
两种移动方式:Move Statement 和 Move Line
Move Statement
将光标置于想要移动的块的起始行(带有开始花括号的那行)中的任意位置,按Ctrl+Shift+↑|↓
,Move Statement的特点就是移动的同时会考虑边界和作用域
Move Line
将光标置于想要移动的行,按Alt+Shift+↑|↓