【问题标题】:"cannot find symbol error" with defining a string定义字符串时“找不到符号错误”
【发布时间】:2012-04-09 15:02:21
【问题描述】:

所以这段代码应该接受一个输入的字符串,把那个字符串倒转,然后比较原始和倒退的字符串,看看它们是否匹配,如果它们是回文则返回 true。在将文本向后翻转之前,我正在尝试将其转换为小写,但是在将参数传递给方法的行中出现“找不到符号”错误,将其转换为小写并将其存储在一个新变量。

我不知道是什么原因造成的,根据我对 java 的了解(这并不多),当方法或类无法访问任何东西时,通常会导致在方法中定义变量时出现“找不到符号”错误值被分配给新变量,但是在我看来,方法 isPal 应该没有问题被赋予变量'str'。请问,谁能告诉我哪里出错了?

public class Lab14TEXT05st
{
    public static void main (String args[])
    {
        System.out.println("\nLab14TEST05\n");
        boolean finished = false;
        do
        {
            System.out.print("Enter a string  ===>>  ");
            String str = Expo.enterString();
            System.out.println();
            System.out.println("Entered String:     " + str);
            System.out.println("Palindrome:         " + Palindrome.isPal(str));       <---This line should be passing string str to 's' in the isPal method
            System.out.println("Almost Palindrome:  " + Palindrome.almostPal(str));   // used only for the 100 and 110 point versions
            System.out.println("Least Palindrome:   " + Palindrome.leastPal(str));    // used only for the 110 point versions
            System.out.println();
            System.out.print("Do you wish to repeat this program [Y/N]?  ===>>  ");
            char repeat = Expo.enterChar();
            finished = (repeat != 'Y' && repeat != 'y');
            System.out.println();
        }
        while (!finished);
    }
}


class Palindrome
{
    public static boolean isPal(String s)
    /*
     * Precondition:  s is an arbitrary String.
     * Postcondition: The value of true is returned if s is a Palindrome, false otherwise.
     */
    {
        String s2 = s.toLowerCase;  <--The error message points to this line
        String s3 = "";

        int n = s.length() - 1;
        for  (int k = n; k >= 0; k--){
            s3 += s2.charAt(k);
        }

        if (s2.equals(s3)){
            return  true;
        }


    }

【问题讨论】:

  • 我认为如果你自己做作业会更有价值......
  • 到底是谁把它标记为 C#?

标签: java string find symbols


【解决方案1】:

您正在尝试调用一个函数。
这需要括号()

【讨论】:

    猜你喜欢
    • 2012-05-08
    • 2012-06-19
    • 2017-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-07
    • 1970-01-01
    相关资源
    最近更新 更多