簡體   English   中英

Java 2D陣列搜索不起作用

[英]Java 2D Array Search Not Working

該程序應該返回一塊在板上的位置,該板被表示為2D陣列。 循環僅循環遍歷各列,然后如果仍然找不到該片斷,則轉到下一行。 但是,僅返回[-1,-1]數組(未找到任何片段)。 我無法自行找到錯誤,因此有任何幫助

public int[] pieceFinder(int piece) {

    int[][] board={{43,44,45,50,47,48,49},
                   {36,37,38,39,40,41,42},
                   {29,30,31,32,33,34,35},
                   {22,23,24,25,26,27,28},
                   {15,16,17,18,19,20,21},
                   {8,9,10,11,12,13,14},
                   {1,2,3,50,5,6,7}};    

    int row=0;  
    boolean found=false;
    int[] location={-1,-1} ;  

    for(int column=0;found==true;column++) {
        if(board[row][column]==piece) {
            found=true ;
            location[0]=row; 
            location[1]=column;
        }

        else if(column==6) {
            if(row==6) { 
                break;
            }

        else {
            row++;
        }
    } 
    return location;
}             
boolean found=false;
for(int column=0;found==true;column++){

如您所見,發現是錯誤的。 並且for循環檢查是否找到了真值。 它永遠不會進入循環。 這就是為什么按原樣返回位置的原因。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM