Android中的错误:无法找到符号方法

时间:2015-04-20 18:01:19

标签: java android

我正在尝试编译以下代码,但我一直收到错误。

Cannot find symbol method toCharacterArray(string)
Cannot find symbol method writeSuccess(int,char[],char[])

public class ControlFlow {

    char[] alphabet = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};

    public void start(){
        char[] sentenceToTest = toCharacterArray("the quick red fox jumps over the lazy brown dog");
        char[] missingLetters = new char[26];

        int numOfMissingLetters = 0;

        for(int i=0; i < alphabet.length; i++){
            char letterToFind = alphabet[i];

            if(hasLetter(letterToFind, sentenceToTest)){
                missingLetters[numOfMissingLetters] = letterToFind;
                numOfMissingLetters++;
            }
        }

        writeSuccess(numOfMissingLetters,missingLetters,sentenceToTest);
    }

    public boolean hasLetter(char aLetter, char[] aSentence) {
        boolean found = false;
        int position = 0;
        while(!found){
            if(aLetter == aSentence[position]){
                found = true;
            }else if(position == aSentence.length - 1){
                break;
            }else{
                position++;
            }
        }
        return found;
    }
}

2 个答案:

答案 0 :(得分:1)

你需要做的是

String abc="the quick red fox jumps over the lazy brown dog";

char[] sentenceToTest=abc.toCharArray();

并且您没有在班级中定义写成功方法

public void writeSuccess (int numOfMissingLetters,char[] missingLetters, char[] sentenceToTest){



  Log.e("","number of missing letters are : "+numOfMissingLetters);
  Log.e("","------------------");

   for(int i=0 ;i<sentenceToTest.length();i++){

      Log.e("","sentence to test is : "+sentenceToTest[i]);

   }

   Log.e("","------------------");


   for(int i=0 ;i<missingLetters.length();i++){

      Log.e("","missing letter is : "+missingLetters[i]);

   }


}

答案 1 :(得分:1)

char[] sentenceToTest = toCharacterArray("the quick red fox jumps over the lazy brown dog");

应该是:

char[] sentenceToTest = "the quick red fox jumps over the lazy brown dog".toCharacterArray();

.toCharacterArray()是String对象的一种方法。所以你做str.toCharacterArray(),而不是toCharacterArray(str)

对于您的第二个问题,您没有在向我们展示的代码中实施writeSuccess()方法。