问题描述
我有一个从数组返回值的 for 循环.
I have a for loop that returns values from an array.
public static String getPieces(){ for(int y=0; y<=7; y++) for(int x=0; x<=7; x++) return piece[x][y]; }
方法中有明确的return语句,每次调用都会返回.为什么会说缺少返回语句?
There is a return statement clearly in the method that will return every time it is called. Why does it say missing return statement?
推荐答案
除了 loop 完全没有意义(因为它会返回piece[0][0])之外,添加额外的返回行可能帮助你:
Besides the loop being completely pointless (because it will return piece[0][0]), adding an extra return line might help you:
public static String getPieces() { for (int y = 0; y <= 7; y++) { for (int x = 0; x <= 7; x++) { return piece[x][y]; } } }
由于您声明要返回 64 个值,因此您必须返回一个数组.
Since you stated that you want to return 64 values, you'll have to return an array.
public static ArrayList<String> getPieces() { ArrayList<String> strings = new ArrayList<String>(); for (int y = 0; y <= 7; y++) { for (int x = 0; x <= 7; x++) { strings.add(piece[x][y]); } } return strings; }