Палиндром Сервис Класс и Клиентский класс - PullRequest
0 голосов
/ 02 апреля 2012

У меня есть несколько вопросов, с которыми мне нужна помощь.

Я добавлю сюда и мой код, и исходный код (я думаю, какое назначение требует уточнения) здесь.

Класс обслуживания

public class Palindrome
{    
   private String pal;

    public Palindrome()
    {
       pal = " ";
    }

    public Palindrome(String newPal)
    {          
        pal = newPal.toUpperCase();         
    }

    public void setPal(String initPalin)
    {
       pal = initPalin.toUpperCase();           
    }

    public String getPal()
    {
       return pal;
    }

    public boolean isPalindrome()
    {
       int left = 0;
        int right = pal.length() -1;

        while (pal.equals(toUpperCase))
        {
          if (pal.charAt(left) != pal.charAt(right));
             {
                 return false;
              }
              left++;
              right--;
        }
           return true;
        }

     public String toString()
     {
        return "Palindrome" + isPalindrome();
     }
}

Клиентский класс

import java.util.Scanner;

    public class Palindromeclient
    {
      public static void main(String[]args)
      {             
          String pal;
          boolean isS = false;

          Scanner scan = new Scanner(System.in);

          System.out.println("Enter statement press[enter]:");
          String userinput = scan.nextLine();
          Palindrome statement = new Palindrome(pal);

          isS = statement.isPalindrome();

          if (isS)
              System.out.println(userinput + "is a palindrome");              
          else 
              System.out.println(userinput + "is not a palindrome");              
      }      
    }

Мой код дает мне

Palindrome.java:34: error: cannot find symbol
        while (pal.equals(toUpperCase))
                          ^
  symbol:   variable toUpperCase
  location: class Palindrome
1 error

Хотя я не понимаю, могу ли я просто добавить заглавные буквы в набор иливместо этого второй конструктор, который может исправить мой класс обслуживания.

Это мой вопрос, номер один

1 Ответ

1 голос
/ 02 апреля 2012

Ответ на вопрос 1:

toUpperCase - это метод строки и должен вызываться как единое целое.

pal.toUpperCase()

Точно так же, как вы делали метод setPal.

Ответ на вопрос 2: Логическое значение в методе main не требуется, поскольку вы можете спросить свой объект Palindrome, является ли он палидромом непосредственно в файле de System.out.

statement.isPalindrome()

Однако будьте осторожны, ваша программа не будет работать, поскольку вы не передадите пользовательский ввод в конструктор Palindrome.

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