P2249 【深基13.例1】查找JAVA

问题遇到的现象和发生背景

洛谷P2249 【深基13.例1】查找,用二分查找做的,把Eclipse都给跑崩了,不知道哪里错了

img

遇到的现象和发生背景,请写出第一个错误信息
用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner sc=new Scanner (System.in);
        int n=sc.nextInt();
        int m=sc.nextInt();
        int[] a=new int[n];
        int[] b=new int[m];
        for(int i=0;i<n;i++)
            a[i]=sc.nextInt();
        for(int j=0;j<m;j++)
            b[j]=sc.nextInt();
        for(int i=0;i<m;i++)
            cha(a,b[i]);
    }
    public static void cha(int a[],int item)
    {
        int low=0;
        int high=a.length;
        while(low<=high)
        {
            int mid=(low+high)/2;
            int guess=a[mid];
            if(guess==item)
                System.out.print(mid+1+" ");
            if(guess>item)
                high=mid-1;
            if(guess<item)
                low=mid+1;
            else
                System.out.print("-1");
        }
    }

}

运行结果及详细报错内容
我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%
我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”

找到结果之后你是不是应该break一下,要不死循环了