请问各位高手这个程序里find里的while(true)是怎么退出循环的,while(true)可是无限循环啊,而且循环体里面没有break语句,应该是抛出EOFException才对啊,请各位大侠知道我一下
public class BinarySearchTest
{
private long[] a;
private int nElems; public BinarySearchTest(int max)
{
a = new long[max];
nElems = 0;
} public int size()
{
return nElems;
} public int find(long searchKey)
{
int lowerBound = 0;
int upperBound = nElems - 1;
int curIn;
while(true)
{
curIn = (lowerBound + upperBound) / 1;
if (a[curIn] == searchKey)
return curIn;
else if (lowerBound > upperBound)
return nElems;
else
{
if (a[curIn] < searchKey)
lowerBound = curIn + 1;
else
upperBound = curIn - 1;
}
}
}
}
public class BinarySearchTest
{
private long[] a;
private int nElems; public BinarySearchTest(int max)
{
a = new long[max];
nElems = 0;
} public int size()
{
return nElems;
} public int find(long searchKey)
{
int lowerBound = 0;
int upperBound = nElems - 1;
int curIn;
while(true)
{
curIn = (lowerBound + upperBound) / 1;
if (a[curIn] == searchKey)
return curIn;
else if (lowerBound > upperBound)
return nElems;
else
{
if (a[curIn] < searchKey)
lowerBound = curIn + 1;
else
upperBound = curIn - 1;
}
}
}
}
解决方案 »
- 求教装饰模式和代理模式的区别
- JAVA SE JTABLE 的行颜色
- 为什么这个没换行(java)
- 如何可以在firefox中处理XML
- 关于一个UI的问题
- 找不到class文件,希望高手帮帮偶!!急!!!!!
- 关于JTree
- 怎么获得.exe文件的图标,把它显示在JLabel上----------着急!!!
- 用Jbuilder怎么开发一个可以传文件的ftp小程序?
- how to insert multipart/alternative in multipart/mixed (javamail)
- 急急急急急急!!!!!!!!!!!!希望各位大哥赶快帮忙做一下,谢谢了 小弟急着用.!!!!!!!!!!!
- ××××××× poi 如何清空excle 工作表 ××××××××
return curIn;
else if (lowerBound > upperBound)
return nElems;
====================================================================return语句是从方法里返回,这样的话while自然也就退出了
LZ基础一定要打好。
你这样,很危险
仔细看一下书了