Closed. This question needs to be more focused。它当前不接受答案。
                            
                        
                    
                
            
                    
                
                        
                            
                        
                    
                        
                            想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
                        
                        2年前关闭。
                    
                
        

我很困惑,想知道是否有人知道将国际象棋中的“ a1”用户输入转换为二维数组中的[] []的方法吗?

最佳答案

由于国际象棋棋盘定义明确,因此另一种方法是使用枚举。例如:

    public static void main(String[] args) {
        ChessPosition cp = ChessPosition.valueOf("A1");
        System.out.println(cp);

        cp = ChessPosition.valueOf("H8");
        System.out.println(cp);
    }

    public enum ChessPosition {

        A1(0, 0),
        // ...
        H8(7, 7);


        private final int row;
        private final int column;

        private ChessPosition(int row, int column) {
            this.row = row;
            this.column = column;
        }

        public int getRow() {
            return row;
        }

        public int getColumn() {
            return column;
        }

        public String toString() {
            return name() + " row=" + getRow() + ", column=" + getColumn();
        }
    }

09-05 18:25