Java не может найти символ, но у меня нет опечаток - PullRequest
0 голосов
/ 22 сентября 2019

У меня появляется ошибка: «Java: не удается найти символ» каждый раз, когда один из моих открытых методов в моем Java-файле вызывается из тестового файла Java, но, насколько я могу судить, ни одна из обычных ошибок, которые делают этоошибка в моем коде.Вот некоторые из файлов Java, к которым осуществляется доступ:

import java.io.*;
import java.util.*;
import java.lang.*;

public class SneakyQueens
{
  private static final int UO = 0;
  // Given an ArrayList of coordinate strings reprsenting the locations of the queens
  // on a boardSize x boardSize chess board, return true if none of the queens can
  // attack one another. Otherwise, return false.
  public static boolean alltheQueensAreSafe(ArrayList<String> coordinateStrings, int boardSize)
  {
    // maximum number of queens that can still be safe is equal to boardSize because
    // none may share a column or row
    if (coordinateStrings.size() > boardSize)
      return false;

    int[] colCo = new int[boardSize + 1];
    int[] rowCo = new int[boardSize + 1];

    // parsing each element of the ArrayList and evaluating column and diagonal
    // values as they are stored
    for (String co : coordinateStrings)
    {
      int colVal = parseCoordinateString(co, 1);
      int rowVal = parseCoordinateString(co, 0);

      // if column is unoccupied, place flag in column coordinates array
      if (colCo[colVal] == UO)
      {
        colCo[colVal] = 1;
      }
      else
      {
        return false;
      }

, а вот некоторые из тестовых файлов, пытающихся получить доступ к SneakyQueens.java

import java.io.*;
import java.util.*;

public class TestCase02
{
    private static void checkTest(boolean success)
    {
        System.out.println(success ? "Hooray!" : "fail whale :(");
    }

    public static void main(String [] args)
    {
        ArrayList<String> list = new ArrayList<String>();

        list.clear();
        list.add("a1");
        list.add("b2");
        checkTest(SneakyQueens.allTheQueensAreSafe(list, 60000) == false);

        list.clear();       
        list.add("a2");
        list.add("b1");
        checkTest(SneakyQueens.allTheQueensAreSafe(list, 60000) == false);

        list.clear();
        list.add("xx342");
        list.add("xy343");
        checkTest(SneakyQueens.allTheQueensAreSafe(list, 60000) == false);

1 Ответ

0 голосов
/ 23 сентября 2019
  • Похоже, вы не используете пакеты, что может объяснить, почему вы не можете получить доступ к SneakyQueen "извне".

  • Если вы это делаетене объявлять или не хотеть объявлять экземпляр SneakyQueen, вы должны сделать его абстрактным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...