黑马程序员技术交流社区

标题: ----------Eclipse快捷键大全(转载) ---------- [打印本页]

作者: syusouki    时间: 2015-10-28 09:53
标题: ----------Eclipse快捷键大全(转载) ----------
Eclipse快捷键大全(转载)
Ctrl+1 快速修复(最经典的快捷键,就不用多说了)
Ctrl+D: 删除当前行
Ctrl+Alt+↓ 复制当前行到下一行(复制增加)
Ctrl+Alt+↑ 复制当前行到上一行(复制增加)
Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)
Alt+↑ 当前行和上面一行交互位置(同上)
Alt+← 前一个编辑的页面
Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)
Alt+Enter 显示当前选择资源(工程,or 文件 or文件)的属性
Shift+Enter 在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)
Shift+Ctrl+Enter 在当前行插入空行(原理同上条)
Ctrl+Q 定位到最后编辑的地方
Ctrl+L 定位在某行 (对于程序超过100的人就有福音了)
Ctrl+M 最大化当前的Edit或View (再按则反之)
Ctrl+/ 注释当前行,再按则取消注释
Ctrl+O 快速显示 OutLine
Ctrl+T 快速显示当前类的继承结构
Ctrl+W 关闭当前Editer
Ctrl+K 参照选中的Word快速定位到下一个
Ctrl+E 快速显示当前Editer的下拉列表(如果当前页面没有显示的用黑体表示)
Ctrl+/(小键盘) 折叠当前类中的所有代码
Ctrl+×(小键盘) 展开当前类中的所有代码
Ctrl+Space 代码助手完成一些代码的插入(但一般和输入法有冲突,可以修改输入法的热键,也可以暂用Alt+/来代替)
Ctrl+Shift+E 显示管理当前打开的所有的View的管理器(可以选择关闭,激活等操作)
Ctrl+J 正向增量查找(按下Ctrl+J后,你所输入的每个字母编辑器都提供快速匹配定位到某个单词,如果没有,则在stutes line中显示没有找到了,查一个单词时,特别实用,这个功能Idea两年前就有了)
Ctrl+Shift+J 反向增量查找(和上条相同,只不过是从后往前查)
Ctrl+Shift+F4 关闭所有打开的Editer
Ctrl+Shift+X 把当前选中的文本全部变味小写
Ctrl+Shift+Y 把当前选中的文本全部变为小写
Ctrl+Shift+F 格式化当前代码
Ctrl+Shift+P 定位到对于的匹配符(譬如{}) (从前面定位后面时,光标要在匹配符里面,后面到前面,则反之)

下面的快捷键是重构里面常用的,本人就自己喜欢且常用的整理一下(注:一般重构的快捷键都是Alt+Shift开头的了)
Alt+Shift+R 重命名 (是我自己最爱用的一个了,尤其是变量和类的Rename,比手工方法能节省很多劳动力)
Alt+Shift+M 抽取方法 (这是重构里面最常用的方法之一了,尤其是对一大堆泥团代码有用)
Alt+Shift+C 修改函数结构(比较实用,有N个函数调用了这个方法,修改一次搞定)
Alt+Shift+L 抽取本地变量( 可以直接把一些魔法数字和字符串抽取成一个变量,尤其是多处调用的时候)
Alt+Shift+F 把Class中的local变量变为field变量 (比较实用的功能)
Alt+Shift+I 合并变量(可能这样说有点不妥Inline)
Alt+Shift+V 移动函数和变量(不怎么常用)
Alt+Shift+Z 重构的后悔药(Undo)

编辑
作用域 功能 快捷键
全局 查找并替换 Ctrl+F
文本编辑器 查找上一个 Ctrl+Shift+K
文本编辑器 查找下一个 Ctrl+K
全局 撤销 Ctrl+Z
全局 复制 Ctrl+C
全局 恢复上一个选择 Alt+Shift+↓
全局 剪切 Ctrl+X
全局 快速修正 Ctrl1+1
全局 内容辅助 Alt+/
全局 全部选中 Ctrl+A
全局 删除 Delete
全局 上下文信息 Alt+?
Alt+Shift+?
Ctrl+Shift+Space
Java编辑器 显示工具提示描述 F2
Java编辑器 选择封装元素 Alt+Shift+↑
Java编辑器 选择上一个元素 Alt+Shift+←
Java编辑器 选择下一个元素 Alt+Shift+→
文本编辑器 增量查找 Ctrl+J
文本编辑器 增量逆向查找 Ctrl+Shift+J
全局 粘贴 Ctrl+V
全局 重做 Ctrl+Y


查看
作用域 功能 快捷键
全局 放大 Ctrl+=
全局 缩小 Ctrl+-


窗口
作用域 功能 快捷键
全局 激活编辑器 F12
全局 切换编辑器 Ctrl+Shift+W
全局 上一个编辑器 Ctrl+Shift+F6
全局 上一个视图 Ctrl+Shift+F7
全局 上一个透视图 Ctrl+Shift+F8
全局 下一个编辑器 Ctrl+F6
全局 下一个视图 Ctrl+F7
全局 下一个透视图 Ctrl+F8
文本编辑器 显示标尺上下文菜单 Ctrl+W
全局 显示视图菜单 Ctrl+F10
全局 显示系统菜单 Alt+-


导航
作用域 功能 快捷键
Java编辑器 打开结构 Ctrl+F3
全局 打开类型 Ctrl+Shift+T
全局 打开类型层次结构 F4
全局 打开声明 F3
全局 打开外部javadoc Shift+F2
全局 打开资源 Ctrl+Shift+R
全局 后退历史记录 Alt+←
全局 前进历史记录 Alt+→
全局 上一个 Ctrl+,
全局 下一个 Ctrl+.
Java编辑器 显示大纲 Ctrl+O
全局 在层次结构中打开类型 Ctrl+Shift+H
全局 转至匹配的括号 Ctrl+Shift+P
全局 转至上一个编辑位置 Ctrl+Q
Java编辑器 转至上一个成员 Ctrl+Shift+↑
Java编辑器 转至下一个成员 Ctrl+Shift+↓
文本编辑器 转至行 Ctrl+L


搜索
作用域 功能 快捷键
全局 出现在文件中 Ctrl+Shift+U
全局 打开搜索对话框 Ctrl+H
全局 工作区中的声明 Ctrl+G
全局 工作区中的引用 Ctrl+Shift+G


文本编辑
作用域 功能 快捷键
文本编辑器 改写切换 Insert
文本编辑器 上滚行 Ctrl+↑
文本编辑器 下滚行 Ctrl+↓


文件
作用域 功能 快捷键
全局 保存 Ctrl+X
Ctrl+S
全局 打印 Ctrl+P
全局 关闭 Ctrl+F4
全局 全部保存 Ctrl+Shift+S
全局 全部关闭 Ctrl+Shift+F4
全局 属性 Alt+Enter
全局 新建 Ctrl+N


项目
作用域 功能 快捷键
全局 全部构建 Ctrl+B


源代码
作用域 功能 快捷键
Java编辑器 格式化 Ctrl+Shift+F
Java编辑器 取消注释 Ctrl+\
Java编辑器 注释 Ctrl+/
Java编辑器 添加导入 Ctrl+Shift+M
Java编辑器 组织导入 Ctrl+Shift+O
Java编辑器 使用try/catch块来包围 未设置,太常用了,所以在这里列出,建议自己设置。
也可以使用Ctrl+1自动修正。


运行
作用域 功能 快捷键
全局 单步返回 F7
全局 单步跳过 F6
全局 单步跳入 F5
全局 单步跳入选择 Ctrl+F5
全局 调试上次启动 F11
全局 继续 F8
全局 使用过滤器单步执行 Shift+F5
全局 添加/去除断点 Ctrl+Shift+B
全局 显示 Ctrl+D
全局 运行上次启动 Ctrl+F11
全局 运行至行 Ctrl+R
全局 执行 Ctrl+U


重构
作用域 功能 快捷键
全局 撤销重构 Alt+Shift+Z
全局 抽取方法 Alt+Shift+M
全局 抽取局部变量 Alt+Shift+L
全局 内联 Alt+Shift+I
全局 移动 Alt+Shift+V
全局 重命名 Alt+Shift+R
全局 重做 Alt+Shift+Y

作者: depp    时间: 2015-10-28 09:59
感谢分享
作者: orgcheng    时间: 2015-10-28 10:31
不想在记忆了,太多

作者: 刘彦宗    时间: 2015-10-28 10:44
感谢分享,很受用
作者: Royalblues    时间: 2015-10-29 15:38
值得收藏
作者: 水小新    时间: 2015-10-29 16:59
值得收藏
作者: huoergai    时间: 2015-10-29 18:32
常用的就那么几个,,,
作者: Erma-King    时间: 2015-10-30 11:04
mark,标记了,收藏了
作者: ltxjxqy3    时间: 2015-10-30 21:51
学习了~
作者: IDEA    时间: 2015-10-30 22:01
感谢分享哈哈
作者: woxinfeixiang    时间: 2015-10-30 22:18
Mark一下,好东西啊
作者: cjagnzy    时间: 2015-10-30 22:54
mark一下,日后再用。。。。。
作者: zhengsx    时间: 2015-11-1 22:04
感谢分享,很受用。。
作者: ljx550429    时间: 2015-11-1 23:05
看完了~~但是目前还没使用到谢谢分享
作者: guozhe0917    时间: 2015-11-1 23:07
感觉要好好摸索掌握一下
作者: 10010011    时间: 2015-11-2 10:14
非常感谢分享
作者: xiechanghuai    时间: 2015-11-4 21:13
感谢分享
作者: pl8236448    时间: 2015-11-4 22:39
收藏,感谢分享
作者: laughing_coffin    时间: 2015-11-5 00:42
苹果的有木有?
作者: Zzz___冬眠中    时间: 2015-11-5 15:51
记住常用的几个就可以了,楼主收藏了那么多辛苦了,为楼主点赞;
作者: samge    时间: 2015-11-5 18:39
收藏了,很实用,谢谢 哦
作者: Venus_1991    时间: 2015-11-8 11:44
不错不错,已收藏~~~~~
作者: zypt0218    时间: 2015-11-8 21:38
,谢谢了
作者: 786314376    时间: 2015-11-8 21:41
有用 有用 有用  多谢楼主
作者: bcapple    时间: 2015-11-9 19:07
前来顶顶顶你!!!!
作者: yufang1993    时间: 2015-11-9 21:15
收了,,多谢!!!!!!
作者: 守护魂    时间: 2015-11-10 21:01
多谢分享
作者: wx_YXxWrUwd    时间: 2015-11-10 23:03
用了那么久的软件 还不知道有这么多快捷键
作者: lyg0374    时间: 2015-11-11 08:02
收藏下 谢谢
作者: jia7604112    时间: 2015-11-11 14:05
哇~好多,给力
作者: 许佳鑫    时间: 2015-11-11 17:48
已复制,为什么回帖字数有限制呢
作者: 不带走一片唇印    时间: 2015-11-11 22:10
感谢楼主{:2_42:}
作者: pun    时间: 2015-11-12 20:00
太有用了,谢谢了
作者: zhangjunxiang    时间: 2015-11-12 22:34
感谢分享
作者: 15536889258    时间: 2015-11-14 10:53
这么多啊   慢慢学
作者: 贺小梅    时间: 2015-11-14 22:59
太全了,感谢分享
作者: kellysunny    时间: 2015-11-18 11:14
复制了,谢谢楼主了
作者: z40993130    时间: 2015-11-23 08:36
收藏,谢谢楼主分享

作者: 乌拉小黑    时间: 2015-11-23 19:07
马克,必须收藏!
作者: hrfhwy    时间: 2015-11-23 19:48
好全啊,谢谢楼主分享
作者: VATHE_HEIMA    时间: 2015-11-23 22:35
感谢,用处大大,顶
作者: 野生小屌丝    时间: 2015-11-24 00:29
顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
作者: 野生小屌丝    时间: 2015-11-24 00:32
顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
作者: tansuozhey    时间: 2015-11-24 08:31
谢谢分享!非常需要!
作者: yh122099654    时间: 2015-11-25 07:52
需要的时候再进来看也是不错的。
作者: hugh88    时间: 2015-11-25 08:07
顶顶顶,正在找这个,谢谢
作者: 1018chenhaiyang    时间: 2015-11-26 22:19
多谢楼主了,好定西收藏了
作者: 草上飞f    时间: 2015-11-27 14:31
很给力!!!
作者: MrPRF    时间: 2015-11-28 01:32
好好好,好用啊!实在!
作者: QFBB    时间: 2015-11-28 18:27
值得收藏
作者: olivor    时间: 2015-11-28 20:52
超级不错的分享
作者: wangwen896    时间: 2015-11-28 21:23
感谢分享
作者: liuqiang11164    时间: 2015-11-28 22:26
好全,复制下来了
作者: liuzhipeng    时间: 2015-11-28 23:57
感谢楼主分享~
作者: 33期1113刘传政    时间: 2015-11-29 22:07
已经下载,谢谢
作者: a287655882    时间: 2015-11-29 22:15
今天刚学,赶紧收藏了
作者: 谁都有秘密。    时间: 2015-12-1 17:04
灰常有用啊  果断保存
作者: 秋alin    时间: 2015-12-3 22:08
赞,很好的说。。楼主辛苦了
作者: 黑锅    时间: 2015-12-4 10:43
nice啊!赞!
作者: 花见花开1991    时间: 2015-12-4 15:50
真的很实用,试过,感谢楼主
作者: 洛书dw    时间: 2015-12-4 22:12
mark,有空看看
作者: Mr.zhao    时间: 2015-12-5 18:53
过来学习下,
作者: seawaveai    时间: 2015-12-5 22:16

记住常用的几个就可以了
作者: 阳光在路上    时间: 2015-12-5 22:56
挺全的,不错
作者: zuyafan    时间: 2015-12-6 22:06
学习学习
作者: zuyafan    时间: 2015-12-6 22:09
不错,学习
作者: 凤凰城nash    时间: 2015-12-6 23:40
收藏起来
作者: wx_KWWw45aw    时间: 2015-12-7 09:55
太有用了
作者: @别闹    时间: 2015-12-14 19:48
感谢分享!太多了  不知道哪些是常用的!
作者: 纯色小白狼    时间: 2015-12-14 20:13
楼主辛苦了 感谢分享
作者: duandong    时间: 2015-12-14 21:08
太多了,常用的就那么几个
作者: Cheryl_S2puu    时间: 2015-12-14 21:26
加油吧!!不后退
作者: zuozuozou    时间: 2015-12-17 00:39
谢谢分享!
作者: 手有键盘心不慌    时间: 2015-12-18 20:50
学到了! 虽然记不住全部 但还是很有用!
作者: pjkiki    时间: 2015-12-18 21:29
66666666666666666666
作者: 雨非飞飞    时间: 2015-12-22 14:22
感谢分享
作者: djhllpf123    时间: 2015-12-22 15:58
学习了。。
作者: 闯破南墙    时间: 2015-12-23 23:06
这个确实有用啊.
作者: Dabing大兵    时间: 2015-12-27 22:39
赞。。。。。。。。。。。。。。。。。。
作者: s1714534118    时间: 2015-12-29 08:21
谢谢分享!很有用!
作者: 夜孤城    时间: 2015-12-29 21:25
记得好繁琐,咋么办
作者: 雪中飞    时间: 2015-12-30 12:48
谢谢分享,太实用啦~
作者: shenfuhan    时间: 2016-1-1 00:15
特多,查询还差不多,不过是好东西
作者: 华夏书生    时间: 2016-1-1 13:53
感谢分享
作者: 594869964    时间: 2016-1-5 22:17
嗯  很实用
作者: 549208564    时间: 2016-1-7 19:34
果断收藏,记的头大
作者: 1055513951    时间: 2016-1-11 22:00
很有用,感谢
作者: 今宵何在    时间: 2016-1-12 22:40
这个必须有
作者: ZEROCRF    时间: 2016-1-17 22:58
楼主辛苦!已收藏!
作者: 625386014    时间: 2016-1-19 21:15
集合框架:
        单列集合Collection
                List:有序(存取一致),可重复
                        ArrayList:底层数据结构是数组,查询快,增删慢。线程不安全,效率高。
                        Vector:底层数据结构是数组,查询快,增删慢。线程安全,效率低。
                        LinkedList:底层数据结构是链表,增删块,查询慢。线程不安全,效率高。

                Set:无序,唯一。
                        HashSet:底层数据结构是:哈希算法。线程不安全,效率高。
                                         依赖于两个方法: hashCode()  equals();

                        TreeSet:底层数据结构是:二叉树。线程不安全,效率高。
                                     自然排序:
                                                Comparable,  compareTo();

                                         比较器接口:
                                                Comparator,          compare();
        双列集合Map
                HashMap 底层数据结构是:哈希算法。线程不安全,效率高。
                        怎么保证键唯一性?
                                 依赖于两个方法: hashCode()  equals();
                TreeMap 底层数据结构是:二叉树。线程不安全,效率高。
                        怎么保证键唯一性的?
                                 自然排序:
                                        Comparable,  compareTo();

                                 比较器接口:
                                        Comparator,          compare();



如何选择使用哪种集合?
        看需求,看是否是单列
                是:用Collection
                        看是否唯一:
                                是:用Set
                                        是否需要排序:
                                                是:TreeSet
                                                否:HashSet
                                                需求不明确,用 HashSet
                                否:用List
                                        看是否考虑同步
                                                是:Vector
                                                否:
                                                        看查询多还是增删多:
                                                                查询多:ArrayList
                                                                增删多:LinkedList
                                                需求不明确,用ArrayList

                否:Map
                        是否需要排序:
                                是:TreeMap
                                否:HashMap
                                需求不明确,用HashMap



面试题:
        题目一:Map接口和Collection接口有什么不同?
                        Map:双列集合的顶层接口,键具有唯一性,数据结构只针对键有效。
                        Collection:单列集合的顶层接口,它的子体系Set具有唯一性,数据结构是针对于元素有效。

        题目二:字符串,数组,集合如何获取长度?

        题目三: HashMap 和 Hashtable 的区别?  
                        HashMap: JDK1.2以后出现的;线程不安全,效率高;可以存null值和null键。
                        Hashtable:JDK1.0以后出现的;线程安全,效率低;不可以存null值和null键。
                        相同点:底层都是哈希算法,都是双列集合。
        题目四: TreeSet 和 HashSet 是怎么保证元素的唯一性的。

               

        Map中的成员方法:
                添加:
                        put();
                删除:
                        remove();
                        clear();
                判断:
                        containsKey();
                        containsValue();
                        isEmpty();
                获取:
                        get();
                        keySet();
                        values();
                        Set<键值对对象的类型> entrySet();                //获取所有 键值对对象 的集合。
                                                                                                        //Set< Map.Entry<String,Integer> > entrySet();       
                长度:                                                       
                        size();

Map集合如何遍历:                        //今天的重点,必须掌握
        张三,23
        李四,24
        王五,25

        第一种:
                根据键找值。
                思路:
                        A:获取所有键的集合。                                //keySet();
                        B:遍历键的集合,获取到每一个键。   //迭代器,增强for
                        C:根据键找值。                                                //get()

       

        第二种:
                根据键值对找 键和值。
                A:获取所有键值对对象的 集合。   entrySet();
                B:遍历键值对对象的集合,获取到每一个键值对。   //迭代器,增强for
                C:根据键值对对象来获取 键 和 值。                                //getKey()  getValue();


        LinkedHashMap  :  有序。


Collections:
        public static  void sort(List list);
        public static  int  binarySearch(List list,K key);                //如果找不到,返回值是: 负的插入点减一( -插入点-1 )
        public static   V   max(Collection coll);
        public static   void reverse(List list);
        public static void shuffle(List list);   //随机置换,相当于洗牌

        工具类的两个特性:
                A:构造方法私有化。
                B:成员基本上都是静态的。

注意:泛型一般和集合结合使用。
泛型高级:
        ? extends E :  固定上边界(向下限定)
                E类及其子类
        ? super E        :  固定下边界(向上限定)
                E类及其父类


练习题:                        //中午把这些题都做一次,第三次选做(下午会讲)

        题目一:练习Map集合的第一种遍历方式(通过键找值)
                HashMap<String,Integer> hm = new HashMap<>();                //创建集合对象
                hm.put("瑞文",18);                                                                //往集合中添加元素
                hm.put("德邦",25);
                hm.put("德玛",40);
                //遍历集合,第一种方式:键找值
                for(String s : hm.keySet() ) {                //获取所有键的集合,然后遍历键集合,获取到每一个键
                        System.out.println(s + "***" + hm.get(s));                //根据键找值
                }

                //遍历集合,第二种方式:通过 键值对对象 找键和值
                //代码自行补全

        题目二:统计字符串中每个字符出现的次数。

        题目三:
                双元课堂有很多基础班:
              第88期基础班定义成一个双列集合,键是学生对象,值是学生的归属地
              第99期基础班定义成一个双列集合,键是学生对象,值是学生的归属地
                无论88期还是99期都是班级对象,所以为了便于统一管理,把这些班级对象添加到双元课堂集合中。
                解题核心关键点:
                        A:双元课堂集合的 定义。
                                HashMap<HashMap<Student,String>,String> hm = new HashMap<>();        //双元课堂集合

                        B:双元课堂集合的 遍历。
                                增强for的嵌套

                代码示例:
                        HashMap<Student,String> hm88 = new HashMap<>();                // 班级集合
                        hm.add(new Student("张三",23),"四川");

                        HashMap<Student,String> hm99 = new HashMap<>();                // 班级集合
                        hm.add(new Student("皇子",23),"北京");

                        HashMap<HashMap<Student,String>,String> hm = new HashMap<>();        //双元课堂集合
                        hm.put(hm88,"第88期基础班");                //把班级集合 当做是一个键,添加到 双元课堂集合中
                        hm.put(hm99,"第99期基础班");

        题目四:模拟斗地主发牌。
                思路:
                        A:买牌。
                        B:洗牌。
                        C:发牌。
                        D:看牌。

作者: 海湾    时间: 2016-1-21 23:23
值得收藏
作者: 1178988315    时间: 2016-1-22 01:08
楼主辛苦了
作者: 怪我咯~    时间: 2016-1-23 21:50
谢谢楼主  马上就要用到了
作者: a332472810    时间: 2016-1-24 07:14
关注一下!!!!!!!!!!
作者: Tyler_王    时间: 2016-1-31 21:16
感谢分享
作者: 余旋    时间: 2016-2-6 14:59
学习了,顶一个
作者: 伊人丶为谁笑    时间: 2016-2-6 18:37
感谢分享
作者: 513402004    时间: 2016-2-7 11:59
收藏了,楼主好人...
作者: P神    时间: 2016-2-14 18:01
感谢大神分享  !!!!!
作者: 李婷婷123    时间: 2016-2-20 22:48
好用   感谢分享




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2