使用Eclipse中Debug模式调试代码案例
举例说明:
问题:有 1、2、3、4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
解决方案:用排列组合方法(不放回)。先取一个数,再从剩下三个数中取一个数,接着再从剩下两个数中取一个数,把这三个数按顺序排列。重复四次,并使得第一次取的数不同。
代码如下:
public static void main(String args[]){
int n=0;//能组成几个数字?
int num=0;//这个数字是多少?
for(int i1=1;i1<=4;i1++)//第一位
{
for(int i2=1;i2<=4;i2++)//第二位
{
if(i2!=i1)//1/2位不一样
{
for(int i3=1;i3<=4;i3++)//第三位
{
if(i3!=i2&&i3!=i1)//3和2/1都不一样
{
num=i1*100+i2*10+i3;
System.out.println(num);
n++;
}
}
}
}
}
System.out.println("总数:"+n);
}
1.你得有个主函数
public static void main(String args[]){
}
2.打断点
双击行号,出现蓝点点,就是断点。
3.按F11开始debug调试
程序会在第一个断点处停下,如果你把鼠标放到变量上,你就可以看到变量的值。
(1)F5(单步运行):即逐步执行程序段中的每一步代码,如果语句为子程序或引用程序等模块,将进入模块内部继续单步运行。
(2)F6(执行):逐行执行当前的程序代码,但不会进入程序模块内部。通俗的说,就是再当前代码页面一行一行往下执行。
(3)F7(返回):如果目前状态在某个子程序的模块内部,则返回调用该模块的上一级程序。
(4)F8(继续运行):跳过后续语句行,直到遇到下一个断点或者观测点为止。简单地说就是从这个断点,到下一个断点。(注意,本程序中第一个断点由于经常出现不满足条件的情况需要增加i3的值,所以下一个断点可能还会是这个断点本身)
4.执行结果
123 124 132 134 142 143
213 214 231 234 241 243
312 314 321 324 341 342
412 413 421 423 431 432
n=24