當我嘗試編譯這個二進制搜索程序時,我收到一條消息,說我有未經檢查和不安全的操作。我看着其他帖子在stackoverflow,但我無法弄清楚如何解決我的代碼。謝謝!java使用未檢查或不安全的操作與xlint錯誤重新編譯?
public binarySearch()
{
ArrayList<Integer> list = new ArrayList<Integer>();
for (int i=0;i<10;i++)
{
int rand = (int)(Math.random()*10);
list.add(rand);
System.out.print(list.get(i)+"\t");
if ((i+1)%10==0) System.out.println();
}
System.out.println("\n"+search(sort(list),0));
}
public ArrayList sort(ArrayList<Integer> listNum)
{
for (int i=0;i<listNum.size()-1;i++)
{
int min=10000;
int index=0;
for (int j=i;j<listNum.size();j++)
if (listNum.get(j)<min)
{
min=listNum.get(j);
index=j;
}
int temp = listNum.get(i);
listNum.set(i,listNum.get(index));
listNum.set(index,temp);
}
return listNum;
}
public boolean search(ArrayList<Integer> listNum, int num)
{
//need to sort list
int low = 0;
int high = listNum.size()-1;
while (low<=high)
{
int mid = (low+high)/2;
int midValue = listNum.get(mid);
if (num<midValue)
high = mid-1;
if (num>midValue)
low = mid+1;
if (num==midValue)
return true;
}
return false;
}
public static void main (String args[])
{
binarySearch app = new binarySearch();
}
此消息的文本,請 – bsiamionau 2013-03-02 17:20:57
在哪一行,你得到的警告?如果您發佈排序方法 – PermGenError 2013-03-02 17:21:20
的簽名...以及「搜索」方法 – Reimeus 2013-03-02 17:21:52