第1章 课程介绍

1)下载及安装2)界面介绍  ...

①界面中左右最边上的小窗口(旋转了90度的字体)都自带了下标,win下快捷键alt+index切换窗口 ②演示效果:模拟时钟,快捷键如,0到100的for循环:100.fori;输出:sout;Thread.sleep()等...

第2章 高效定位代码

1)无处不在的跳转

①快速切换文件,类等(recent
files & recently changed files):  A.help→findaction(command+shift+A)后,搜索recent
files或...;  B.command+E ②
A.返回到上一次编辑的位置:navigator→last edit location(shift+command+delete) 
B.下一次编辑位置:navigator→next edit location(control+command+delete) 
③ A.返回上一次浏览位置:navigator→back(alt+command+←) B.下一次浏览的位置:navigator→forward(alt+command+→) 
C.②和③的区别在于,一个光标停留出编辑过,一个只是光标停留,未编辑。
④利用书签跳转 A.浏览源码或别人代码时,收藏对比或做标记(代码编辑框左侧行号右边点),toggle
bookmark,可用findaction搜索bookmark得到 B.bookmark最常用:alt+f3+【1,2,3...】以后在不是本类的其他地方,ctrl+【1,2,3】都能到此位置
 ⑤收藏位置和文件:command+2打开favorite,alt+shift+f收藏类和方法,收藏方法时光标移到方法名后面
 ⑥安装插件:help→findaction后,输入plugins回车后搜索插件名称安装。 ⑦编辑区跳转文件区:command+1,返回也是command+1或者esc键
⑧利用vim进行多编辑区跳转(分屏后左右跳转):要安装插件ideavim,先略后补

2)精准搜索  ①找类:navigator→class(command+n)(注:non-...打钩,意为在整个包里搜索)  ②找文件:navigator→file(command+shift+n)
 
③找符号symbol(此意为方法和属性名):navigator→symbol(command+alt+shift+n)  ④找字符串:edit→find→find
in path(ctrl+shift+f)注意有很多范围scope选项:match case忽略大小写;file mask指定在某类文件里去搜索...等  ⑤以上快速搜索功能的实现是源于做了索引;

第3章 代码小助手们

1)列操作(举例,枚举里批量把单词大写,按
的格式排列) ①选中一个单词:shift+alt+→或←,shift+command+→或←选中右边/左边光标处开始的本行所有内容。 
所有字母转大 / 小写:edit→toggle case(shift+command+u) 批量选中多行的某一个同样的符号(比如:):edit→find→select
all occur(shift+command+g) 
编辑完代码可能乱,code→reformat code自动整理。 2)live
template①perference(或shift+command+a)→live
templates→“添加,缩写,描述,text”自定义缩写,比如main( ) 3)postfix ①输入一个东西,按.会有提示,比如:100.fori(从0到100的for循环)
② new Date().sout(输出new Date()) 
③name.field(在方法里写this.name = name,但没有name这个成员变量时,用此方法生成) ④user.return(方法里返回user;差不多,
没简便多少) 
⑤user.nn(if(user != null)。。。nn代表not null)
 4)alter
enter 
①show intention action提示②如自动生成方法:f1()
, alt+enter③实现接口:写好一个接口后,光标移到接口名首字母处alt+enter,按提示生成它的实现类④单词拼写:idea怀疑你的拼写错误,单词下方会有波浪线,这时光标移到但此首字母处alt+enter,会给出单词的提示⑤导包

第4章 编写高质量代码

1)重构 ①重构变量:shift+f6(即:rename) 
②重构方法:方法定义时一个参数,引用时想起来应该是两个参,这时command+f6或者alt+enter都可以在原方法上加一个变量
2)抽取

第5章 寻找修改轨迹

1)Git的集成

①撤销:command+z 不在git下

②反撤销:shift + command + z 不在git下

③所有改动回到最原始的状态: git下,空白处,alt+command +z没试过。

2)local
history

①Local history 没有版本控制工具的时候自行进行版本控制

②Find action (shift+command+a)中查找local history,①选show history,点》可以撤销回改变前状态,即revert

③选put label添加到commit后的一个版本,local history查看时左边栏的右上角位置有label名,对应相应的某次commit

第6章 关联一切

①关联spring:

Controller层要依赖Service,Service有serviceImpl,要查看具体依赖的类(类似于eclipse中的按着ctrl点击进入实现类):

File-Project Structure(command +;)-facets-添加-spring(其他选项同理)-窗口右下角“unmapped...”,点击加号,OK。

回到Controller上,类和注入的Service属性所在行左边有图标,可以点击了看。

②关联数据库:

代码框右侧有database,new-datasource-…;并且还可以在右侧框统一管理修改表明,字段等,而不用带xml文档里去改(mybatis)

第7章 开始调试你的程序吧

A.断点调试

①添加断点:run-toggle line breakpoint(command+f8)

②断点调试:run-debug(点小虫子或ctrl+alt+d或者ctrl+d貌似也可以)

③断点运行:(即下一步)F8

④resume(重新开始,继续,恢复):run-resume program(alt+command+R或者F9)跳到下一个断点,如没有断点,直接输出

⑤查看所有断点:shift+command+f8(快捷键难记,debug时左下角有图标,不用记)

⑥断点调试时发现问题了,不想再继续debug时,禁止所有断点:mute breakpoints(同上,不用记)

⑦条件断点:打断点时必须满足某些条件,断点才会生效,如,在for循环内的某一行打了断点,有需求为当s=“haha”时才执行断点,这时command+shift+f8,condition里输入s.equals(“zhangsan”)此时断点标记上多了个问号。在debug中,假设其他地方没有断点了,shift+F9运行,当执行到s=zhangsan时,会停下来

⑧表达式求值:调试中,在断点处你想看看某个值等于多少,这时,选中变量,按run-evaluate expression(alt+f8),回车,查看result的内容就行了,这里expression里可以求值,比如选中list,在expression框中可以输入list.get(0),回车后result里就会有相应的值

⑨运行到指定行:断点在第二行,但你不想看第三四行,直接看第五行,这时光标放在第五行,debugger工具栏右侧有一个run to cursor(alt+f9)就跳过来了,中间的两行运行了,只是没显示过程

⑩setValue:在debug查看值得variables里选中list,按f2,这时可以动态改变list的值,用于后续的debug

B.run anywhere if you can

①运行当前上下文:要运行光标停留处的方法,debug context configuration(shift+ctrl+d),如果光标在两个方法中间的空格,则往上找到最近的context,这里指类,然后运行此类。这样不用右击run...或者在@Test中不用去选中方法名junit测试

②在当前可运行列表中选择一个运行:其实也就是右击空白处,run-debug,选中要debug的方法

③编辑当前运行:貌似没用,省略了

第8章 其他操作

8.1文件操作

①在编辑框中command+n新建方法(构造,重写等),ctrl+shift+n新建外部的类,接口等;选中类或接口delete删除类或接口

②添加文件,找到一个文件,修改小部分后保存在当前包下:打开要复制的文件,全选,参考①新建file,粘贴,选中相应同名字段,列操作,保存OK

③复制文件:选中类,command+c 或者 f5,copy class,改名就行了

④移动当前文件:鼠标拖动类 或者 在类的编辑窗口处直接f6,剪切

8.2文本操作

①复制文件名:command+c;复制文件路径:command+shift+c

②要复制n个文件名,可以每个文件都command+c,然后默认会放在剪切板中,shift+command+v

8.3结构图

①查看当前field,method:navigate-file structure(command+f12),其中m代表method,f代表field

②查看maven依赖:

A.maven的pom文件中一大堆的dependency,查找不方便,打开pom右击空白处,maven-show dependencies,通过拓补图展示出所有依赖,很牛的一个功能,

B.然后搜索command+n,然后选中双击就跳到在pom中的位置。拓补图中,点击连线,会变黄色,可以看到在哪个类中引进来的。

C.就在拓补图中就可以管理依赖,比如,右击某个jar文件-exclude,这时pom文件中会多出exclusion,表某某依赖除外

③类图大纲:在一个son继承father的例子中,在类上按下shift+alt+command+u可以查看整个类的继承关系的类图,看源码或看继承结构时非常有用,猴赛雷噶

④查看类结构图:类似③,光标停留在类名处,ctrl+h查看

⑤查看方法调用:如main中调用了其他方法,光标停留在main处,或者停留在被调用的方法名处都行,call hierarchy或者ctrl+alt+h,分别点击上边一栏左边的两个图标,可以看到调用及被调用的关系,可以点击小三角图标展开

QiTa常用:

1.ctrl+enter:生成(setter/getter/constructor...)

2.选中类名或者方法名,alt+enter,可以实现很多功能,比如生成测试方法等。

3.

IntelliJ IDEA使用技巧 (类比pycharm)的更多相关文章

  1. IntelliJ IDEA 目录技巧

    IntelliJ IDEA的Web应用的目录结构 Ø 目录图: Ø 目录解释: 开发目录 目录名称 描述 Test 工程名称 lib Jar包的存放目录 src 源文件也就是文件(类,资源文件)存放的 ...

  2. IntelliJ IDEA 工具技巧

    IntelliJ IDEA 工具技巧 以下都是自己积累的IntelliJ IDEA 使用技巧,比较零碎,观看不便之处还望海涵,如有错误之处还望指正 自己常用,不懂的可以加群询问:244930845 S ...

  3. IntelliJ IDEA 使用技巧一览表

    IntelliJ IDEA使用技巧一览表 在使用 InelliJ IDEA 的过程中,通过查找资料以及一些自己的摸索,发现这个众多 Java 程序员喜欢的 IDE 里有许多值得一提的小窍门,如果能熟练 ...

  4. 【Tool】IntelliJ IDEA 使用技巧

    IntelliJ IDEA 使用技巧 2019-11-06  20:51:43  by冲冲 1.快捷键 Ctrl+w //括出相关范围 Ctrl+shift+f //按照代码段在全局搜索 Ctrl+f ...

  5. IntelliJ IDEA 调试技巧

    程序员的工作内容,有不少的时间是用在调试代码上.可以说不是在调试代码,就是即将调试代码. 掌握调试代码的一些技巧,在使用IDE提供的debugger时会快速定位问题的方式. 1.多线程调试 在多线程应 ...

  6. IntelliJ Idea各种技巧设置笔记和错误解决

    版本控制 GitHub GitHub提示找不到路径: 解决方法:去官方下载gitHub,然后在以下路径找到Git.exe并设置 C:\Users\你的用户\AppData\Local\GitHub\P ...

  7. Intellij Idea使用技巧、快捷键

    1.Idea设置字体大小:file -> setting -> editor -> colors&font -> save as并自定义 -> font -> ...

  8. python 技巧 之 pyCharm快速添加第三方库和插件

    学习python有几个月,安装第三方库都是通过 pip install 或者 easy_install.每次都要打开命令行感觉太麻烦.还好Pycharm提供了安装第三方库和安装插件的功能. 首先打开P ...

  9. IntelliJ IDEA重构技巧收集

    https://segmentfault.com/a/1190000002488608(重命名文件) http://www.jianshu.com/p/ab298b46bf50(快速生成方法) htt ...

随机推荐

  1. Line belt(三分镶嵌)

    In a two-dimensional plane there are two line belts, there are two segments AB and CD, lxhgww's spee ...

  2. 20172330 2017-2018-1 《Java程序设计》第五周学习总结

    20172330 2017-2018-1 <Java程序设计>第五周学习总结 教材学习内容总结 第五章 首先是对各种各种运算符的了解:刚开始以为相等就是=,还有其他一些符号都挺简单的,然后 ...

  3. matlab 直方图均衡化(含rgb)

    步骤: 统计原图像素每个像素的个数 统计原图像<每个灰度级的像素的累积个数 家里灰度级得映射规则 将原图每个像素点的灰度映射到新图 代码: clear all I=imread('1.jpg') ...

  4. Internet History

    Alan Turing and Bletchley Park Top secret breaking effort(二战破译希特勒密码) 10,000 people at the peak(team ...

  5. Linux内核策略介绍学习笔记

    主要内容 硬件 策略 CPU 进程调度.系统调用.中断 内存 内存管理 外存 文件IO 网络 协议栈 其他 时间管理 进程调度 内核的运行时间 系统启动.中断发生.系统调用以及内核线程. 进程和线程的 ...

  6. css那些事儿2 经典两列布局

    <!DOCTYPE html> <html> <head> <title></title> <link rel="style ...

  7. vuex管理页面标题

    1.在store -> mutation-types.js文件新增常量 export const UPDATE_TITLE = 'UPDATE_TITLE' 2.新增文件title.js目录结构 ...

  8. Ansys Workbench热流固耦合仿真配置

    1.Fluent-Thermal-Structural瞬态分析 此模块连接在fluent已实现流体和固体的热流耦合,传递至thermal实际上只是将流体表面温度作为热载荷施加在固体的液体通道表面,极大 ...

  9. PAT 1052 卖个萌

    https://pintia.cn/problem-sets/994805260223102976/problems/994805273883951104 萌萌哒表情符号通常由“手”.“眼”.“口”三 ...

  10. 利用Vue v-model实现一个自定义的表单组件

    原文请点此链接  http://blog.csdn.net/yangbingbinga/article/details/61915038