Compiler-Fehler Auf Anagramm prüfen

Hallo ich bins wieder einmal.
Ich habe die Aufgabe erhalten, zwei Strings die über die Konsole eingegeben werden auf ein Anagramm zu prüfen.
Meine Idee war, dies mittels BubbleSort zu machen. Zuerst einmal beide Strings sortieren und dann einfach vergleichen ob sie gleich sind. Klingt simpel oder?
Aber mein Quellcode lässt sich nicht kompilieren. Häufigste Errormeldung: cannot find symbol.

Könnt ihr mir sagen, was nicht funktioniert oder richtig implementiert ist?
Danke.
Code:
public class Anagramm
{

  public static void swap1(int i, int j, char[] text1)
  {
    char temp=text1[i];
    text1[i]=text1[j];
    text1[j]=temp;
  }
  public static void swap2(int i, int j, char[] text2)
  {   
    char temp=text2[i];
    text2[i]=text2[j];
    text2[j]=temp;
  }
  public static void sort1(char[] text1)
  {
      boolean isDone;
      do
      {
          isDone=false;
          for(int i=0;i<text1.length-1;i++)
          {
              if(text1[i]>text1[i+1])
              {
                  swap1(i,i+1,text1);
                  isDone=true;                   
              }
          }
      }while(isDone);
  
  }
    public static void sort2(char[] text2)
  {
      boolean isDone;
      do
      {
          isDone=false;
          for(int i=0;i<text2.length-1;i++)
          {
              if(text2[i]>text2[i+1])
              {
                  swap2(i,i+1,text2);
                  isDone=true;                   
              }
          }
      }while(isDone);
  
  }


    public static void main(String[] args){
        System.out.print(testAnagramm(args[1]));
    }

    public static boolean testAnagramm(String text1, String text2){
  {
    if (args.length != 2)           
    {
      System.out.println("Bitte rufen Sie das Programm mit einem Eingabewert auf");
      System.out.println("  java BubbleSort 'dies ist ein text'+ 'dies ist ein text2'");
      System.exit(-1);
    }
    // Zersprengt den String in Einzelteile, nämlich in 'char'-Elemente
    char[] text1 = args[0].toCharArray();
    char[] text2 = args[1].toCharArray();
    // Sortiert die Buchstabenreihe
    sort1(text1);
    sort2(text2);
    text1=text1.replace("!","").replace("?","").replace(".","").replace(",","")
                    .replace(":","").replace(" ","");
    text2=text2.replace("!","").replace("?","").replace(".","").replace(",","")
                    .replace(":","").replace(" ","");
                   
    if(text1.equalsIgnoreCase(text2)) return true;
    else return false;
  }
    }
}
 
Das Array args ist nur in der main-Methode bekannt. Du versuchst aber auch an anderen Stellen, darauf zuzugreifen. Außerdem übergibst du nur einen String an die Methode testAnagramm, obwohl dort zwei erwartet werden. Dann deklarierst du noch Variablen mit Namen, die bereits vergeben sind.
 

Zurück
Oben