idea技巧--debug使用技巧

写在前面:
idea是java开发主流的ide,debug也是常用的功能,但这个功能有着很多强大好用的技巧。现在来总结一下。

文章目录

条件断点

从打断点开始

打上断点,这里是执行100次打印需要在50次的时候进行调试

右键旁边的小红点,输入断点条件

运行之间可以到50

条件的时候求值并记录。

如果我们需要在过条件的时候运行代码可以右键小红点更多。

在求值并记录出输入你需要求值的表达式,这个地方的代码实际上会插入到运行代码,也就是说,如果未定义z而之间是z=i+5,则会出现z未定义的报错,但如果是定义了z,运行此刻会改变z的值。


执行结果

但是如果外面定义了z,求值也定义了,则不会修改外面的z。

最后是1

命中后移除

这个在选项有,就是只有第一次断点才行

基础debug

简单的介绍

指令 快捷键 作用
重新运行 Ctrl+F5 重新运行代码
停止代码 Ctrl+F2 停止当前程序
恢复程序 ctrl+f 不在使用此debug帧而是放行
停止程序 在代码运行过程中强行停止,相当于在当前运行的位置打上了断点
步过 F8 在当前函数栈中运行,不会进入新的函数
步入 F7 会进入新函数
步出 Shift+F8 运行出当前函数
运行到光标 Alt+F9 会尝试运行到光标出,但是会被断点打断。
强制运行 不会呗断点打断

debug中求值

在开发中,我们有时候需要做格外的需求,需要记录数据进行求值。

也可以调用方法,但是请注意,需要符合java语法要求,此处static的main函数不能之间调用demo,此处也有代码提示。

也可以在这里用

在这里插入图片描述

强制返回

这2个地方都可以,当你不想要代码继续运行的时候可以使用这个。

为什么不直接选择停止demo呢?

在实际使用的时候就会发现,有时候他并没有停止,而是会继续运行一段。但是在向数据库插入等操作有时候运行了会很麻烦。

断点回退

有时候在运行的时候发现过了,不需要重新执行直接回退就行。

点击后发现没有打印,且x还是0

相关推荐
catoop9 分钟前
idea 禁用/关闭 sonarlint 后台自动分析(默认开启可能会引起idea卡顿)
intellij-idea
忒可君27 分钟前
C# winform 报错:类型“System.Int32”的对象无法转换为类型“System.Int16”。
java·开发语言
斌斌_____43 分钟前
Spring Boot 配置文件的加载顺序
java·spring boot·后端
路在脚下@1 小时前
Spring如何处理循环依赖
java·后端·spring
一个不秃头的 程序员1 小时前
代码加入SFTP JAVA ---(小白篇3)
java·python·github
赵大仁1 小时前
在 CentOS 7 上安装 Node.js 20 并升级 GCC、make 和 glibc
linux·运维·服务器·ide·ubuntu·centos·计算机基础
丁总学Java1 小时前
--spring.profiles.active=prod
java·spring
上等猿2 小时前
集合stream
java
java1234_小锋2 小时前
MyBatis如何处理延迟加载?
java·开发语言
菠萝咕噜肉i2 小时前
MyBatis是什么?为什么有全自动ORM框架还是MyBatis比较受欢迎?
java·mybatis·框架·半自动