JAVA中一个奇怪的循环问题
来源:百度知道 编辑:UC知道 时间:2024/05/09 18:40:57
代码如下
int i, j, m, n, z;
float p;
Search search=new Search();
System.out.println("ID1 " + " ID2 " + " WEIGHT ");
for (i = 0; i < model.getSize(); i++)
for (j = i + 1; j < model.getSize(); j++)
{
m = search.getSearchResult(c[i]); //程序运行到此处就跳走了!
n = search.getSearchResult(c[j]); //程序根本就没有运行到此处!!!!
z = search.getSearchResult(c[i] + c[j]);
p = (float) z / (m * n);
System.out.println("123");
System.out.println("1");
System.out.println(c[i] + "\t" + c[j] + "\t" + p + "\t");
}
上面的循环中,我设置了断点调试,可是执行了m = search.getSearchResult(c[i]); 这一句for循环就结束了,下面的语句就都不执行了。
getSearchResult()是我写的一
java.lang.NoClassDefFoundError: org/apache/soap/rpc/Parameter
没有发现类定义......
自己朝这方面去搞一下.....
像这种跳不回来的就是有错误在函数里面...就是被调用的函数里面就发生了异常了...
所以...
for (i = 0; i < model.getSize(); i++) 后面的{}呢?
很明显就只执行后面的for嘛
for (i = 0; i < model.getSize(); i++)
{
for (j = i + 1; j < model.getSize(); j++)
{
m = search.getSearchResult(c[i]); //程序运行到此处就跳走了!
n = search.getSearchResult(c[j]); //程序根本就没有运行到此处!!!!
z = search.getSearchResult(c[i] + c[j]);
p = (float) z / (m * n);
System.out.println("123");
System.out.println("1");
System.out.println(c[i] + "\t" + c[j] + "\t" + p + "\t");
}
}
m = search.getSearchResult(c[i]);
应该是这一步出异常,所以就跳出循环了
你的参数中的c这个数组是什么?
c[i]这个对象getSearchResult这个方法可以使用吗?
你还是自己检查检查,问题肯定就在这里面。
你在debug时最好是跳到getSearchResult这个方法试一试