如何在eclipse中快速debug到想要的参数条件场景下
前言
俗话说,工欲善其事必先利其器。
对于我们经常使用的开发工具多一些了解,这也是对我们自己工作效率的一种提升。
场景
作为开发,我们经常会遇到各种bug,大部分的bug很明确,我们直接可以打断点定位到。
但是有的情况下,我们的断点可能在某个循环中~而且这种循环量有点大,如果手动F8一直等到自己想要的参数出现,然后再详细查看每个参数的值,这个未免有些麻烦。
这个时候呢~brakpoint properities就派上用处了
用法
public static void main(String[] args)
{
for(int i=0;i<10000;i++)
{
count++;
//do~something~ 假设这里还有很多参数,以及一些业务的处理
}
System.out.println(Thread.currentThread().getName() + "最终count>>>"+count);
}
首先在我们确认需要打断点的地方,手动打上断点,如上代码,很简单的一个方法,我们在第5行打上断点,我们想查看循环到第100次的时候参数值的情况,这个怎么办?肯定不能手动F8一百次吧!
第一种,切换eclipse到debug模式,然后找到当前断点,右键,选择“brakpoint properities” 菜单,勾选hit count 设置数值为100 这样当这行代码被执行第一百次的时候,会停下来,然后我们就可以慢慢查看具体的各个参数情况了。如下图所示:

第二种,设置条件表达式,我们要找到count 等于100 的情况,这个时候我们勾选conditional 选项 然后在下放的文本域中 输入条件 “count == 100 ” 和java代码写法一样,只要表达式返回的是boolean值就可以。另外,假如我们的参数条件可能不止count一个
我们可以直接在 count == 100 后面拼接其他的参数条件,比如 “ count == 100 || count == 500 && xxxargs > 0 ”这种形式也是可以的。

第三种,同时勾选hit count 和 conditional ,这个时候要特别注意,虽然是多选框~但是 2个的条件是 与 的关系,不是 或 的关系。 也就是在满足 第一个hit count数同时满足第二个条件才会停下来。
按照我们的前面的代码,如果将hit count设置为100,同时将conditional 设置为 count == 100 这个时候是不会有任何停留,因为当前者满足的时候,后者才等于99。这个时候我们需要将count数设置为101 或者将
表达式改为 count == 99 ,这样才同时满足。
如何在eclipse中快速debug到想要的参数条件场景下的更多相关文章
- 如何在Eclipse中快速添加main方法
在创建类时自动添加,只需要勾选"public static void main(String[] args)"
- 如何在Eclipse中设置默认的JSP文件头部编码
如何在Eclipse中设置默认的JSP文件头部编码 一般,我们为了以后在导入和导出程序的时候(特别是项目较大,文件多)一般都默认文件编码格式为UTF-8 如果你通常都是通过Eclipse来编写程序,那 ...
- 如何在Eclipse中添加Tomcat的jar包
原文:如何在Eclipse中添加Tomcat的jar包 右键项目工程,点击Java Build Path 点击Add Library,选择Server Runtime 选择Tomcat版本 此时就看到 ...
- 如何在eclipse中安装Jess
如何在eclipse中安装Jess 浏览:49 | 更新:2014-05-12 16:39 这个文章帮了不少忙,感谢! 但经我实践,还要把插件那些文件向/dropins/sdk下也放一份,才能成功. ...
- 如何在Eclipse中配置Tomcat(免安装版)
如何在Eclipse中配置Tomcat(免安装版) 2013-10-09 23:19wgelgrsh | 分类:JAVA相关 | 浏览642次 分享到: 2013-10-10 17:10提问者采纳 ...
- 如何在Eclipse中添加Servlet-api.jar的方法
方法一: 点击窗口->首选项->java->构建路径->类路径变量->新建:将你的tomcat目录下的common/lib/servlet.jar加进来.如果你建立了一个 ...
- 【Eclipse】如何在Eclipse中使用命令行?
如何在Eclipse中使用命令行? 虽然我们已经有了像 Eclipse 这样高级的 IDE,但是我们有时候也是需要在开发的时候使用 Windows 的命令行,来运行一些独立的程序.在两个程序中切换来切 ...
- 沉淀再出发:如何在eclipse中查看java的核心代码
沉淀再出发:如何在eclipse中查看java的核心代码 一.前言 很多时候我们在eclipse中按F3键打算查看某一个系统类的定义的时候,总是弹出找不到类这样的界面,这里我们把核心对应的代码加进 ...
- Eclipse中快速定位
Eclipse中快速定位 选中项目,ctrl+h 一.目标 查找如下的页面属于哪个activity 二.步骤 1.查找关键字 上述页面中“点我”两个字比较显眼,我们可以去android项目中搜索出现“ ...
随机推荐
- java的Calendar,获取月份少一月的问题及其它注意事项
java的Calendar,获取月份少一月的问题及其它注意事项: import java.util.*; public class DateClass{ public static void main ...
- 【redis 基础学习】(六)Redis HyperLogLog
摘自:http://www.mayou18.com/detail/o6M0v9mi.html Redis HyperLogLog 结构讲解 Redis 在 2.8.9 版本添加了 HyperLogL ...
- Centos7搭建hadoop完全分布式
虽然说是完全分布式,但三个节点也都是在一台机器上.拿来练手也只能这样咯,将就下.效果是一样滴.这个我自己都忘了步骤,一起来回顾下吧. 必备知识: Linux基本命令 vim基本命令 准备软件: VMw ...
- OAuth 2 开发人员指南
这是支持OAuth2.0的用户指南.对于OAuth1.0,一切都是不同的,所以看它的用户指南. 本用户指南分为两个部分,第一部分是OAuth2.0提供端(OAuth 2.0 Provider),第二部 ...
- javascript快速入门之BOM模型—浏览器对象模型(Browser Object Model)
什么是BOM? BOM是Browser Object Model的缩写,简称浏览器对象模型 BOM提供了独立于内容而与浏览器窗口进行交互的对象 由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对 ...
- 科学计算工具Numpy
参考学习资料: Python.NumPy和SciPy介绍:http://cs231n.github.io/python-numpy-tutorial NumPy和SciPy快速入门:https://d ...
- 面试时怎样回答:你对原生ajax的理解
很多人跟我一样用习惯了jq封装好的$.ajax,但是面试时,原生ajax是很多面试官喜欢问的问题,今天再查资料,打算好好整理一下自己理解的原生ajax. 首先,jq的ajax:一般我常用的参数就是这些 ...
- BZOJ_1486_[HNOI2009]最小圈_01分数规划
BZOJ_1486_[HNOI2009]最小圈_01分数规划 Description Input Output Sample Input 4 5 1 2 5 2 3 5 3 1 5 2 4 3 4 1 ...
- linux学习之路(2)
1.输入输出重定向 输入重定向中用到的符号及其作用 命令 < 文件 将文件作为命令的标准输入 命令 << 分界符 从标准输入中读入,直到遇见分界符才停止 命令 < 文件 1 ...
- Linux文件系统选择
通过综合使用多种标准文件系统Benchmarks对Ext3, Ext4, Reiserfs, XFS, JFS, Reiser4的性能测试对比,对不同应用选择合适的文件系统给出以下方案,供大家参考.文 ...