Я очень новичок в Java, и мне сложно определить, как принимать аргументы из командной строки и передавать их в моем коде. Я могу использовать их в основном методе моего кода, но я предпочел бы их использовать в классе Chessboard. Существует общедоступный статический int n, который жестко закодирован, но я бы хотел, чтобы это было то, что я отправляю в качестве аргументов. Позже я возьму начальную позицию для размещения королевы, поэтому я надеюсь, что этот процесс будет похож; если я получу помощь в этом, надеюсь, я могу использовать для этого ту же технику.Как передать эти параметры (java)?
public class Chessboard {
public static void main(String[] args) {
System.out.println("Hello World");
Chessboard board = new Chessboard(); //creates a Chessboard object
board.start();
}
public static int n = 8;
private static int board[][]; //this is the Chessboard array
private int numQueens; //this is the number of queens on the board
public Chessboard(){
numQueens = 0; //initialized to zero, no queens on board to start yet
board = new int[n][n]; //nxn 2D array of zeros
for (int j = 0; j < n; j++)
{
for (int k = 0; k < n; k++)
{
board[j][k] = 0; //redundant, but I need to learn how to
} //initialize. this manually puts zeros into
} //the array
}
... и код продолжается отсюда, но я не думаю, что это необходимо. Если да, я рад загрузить его.
Спасибо за ваше время.
Возможный дубликат [как передать аргументы командной строки основному методу динамически] (http://stackoverflow.com/questions/8756377/how-to-pass-command-line-arguments-to-main-method-dynamically) –
Я не верю, что это дубликат этого вопроса. –
'static' не является механизмом передачи перекрестного объекта, и вы должны научиться жить без него, как только сможете. Возможно, начните с просмотра [Передача информации методу или конструктору] (https://docs.oracle.com/javase/tutorial/java/javaOO/arguments.html) – MadProgrammer