Hallo.
Bin momentan dran Java zu lernen. Bin momentan totaler Anfänger und versuche mich gerade an einem kleinen Programm, wo die Verschlüsselungsmethoden Vigenere, Caesar und ein eigenes Verschlüsselungssystem verbaut sein wird.
Nun hab ich das Problem Vigenere und Caesar mit Buttons zu koppeln.
Benutze Java-Editor.
Dabei bekomme 2 Fehlermeldungen:
Quote:
GUI.java:118:31: error: method verschluesseln in class Caesar cannot be applied to given types;
jTextField6.setText(Caesar.verschluesseln(Eingabe, Schluessel));
_____________________^
required: String,int
found: String,String
reason: actual argument String cannot be converted to int by method incovation conversion
|
Quote:
GUI.java:112:25:error: cannot find symbol
jTextField3.setText(Vigenere.verschluesseln(Eingab e,Schluessel));
symbol: variable vigenere
location: class gui
|
GUI.java
Code:
public void jButton1_ActionPerformed(ActionEvent evt) {
String Eingabe = jTextField1.getText();
String Schluessel = jTextField2.getText();
jTextField3.setText(Vigenere.verschluesseln(Eingabe,Schluessel));
}
public void jButton2_ActionPerformed(ActionEvent evt) {
String Eingabe = jTextField4.getText();
String Schluessel = jTextField5.getText();
jTextField6.setText(Caesar.verschluesseln(Eingabe,Schluessel));
}
Vigenere.java
Code:
public class Vigenere {
public String verschluesseln (String jTextField1, String jTextField2) {
while (Eingabe.length() > Schluessel.length()) {
Schluessel = Schluessel + Schluessel;
}
String Ausgabe = "";
int i = 0;
while ( i < Eingabe.length()) {
char ktb = Eingabe.charAt(i);
int ktbz = (int) ktb;
char sb = Schluessel.charAt(i);
int sbz = (int) sb;
sbz = sbz -32;
int cbz = ktbz + sbz;
if (cbz > 126) {
cbz -= 94;
}
char cb = (char) cbz;
Ausgabe += cb;
i += 1;
}
return Ausgabe;
}
public String entschluesseln (String Eingabe, String Schluessel) {
while (Eingabe.length() > Schluessel.length()) {
Schluessel = Schluessel + Schluessel;
}
String Ausgabe = "";
int i = 0;
while ( i < Eingabe.length()) {
char ktb = Eingabe.charAt(i);
int ktbz = (int) ktb;
char sb = Schluessel.charAt(i);
int sbz = (int) sb;
sbz = sbz -32;
int cbz = ktbz - sbz;
if (cbz < 32) {
cbz += 94;
}
char cb = (char) cbz;
Ausgabe += cb;
i += 1;
}
return Ausgabe;
}
}
Caesar.java
Code:
public class Caesar {
public String verschluesseln (String Eingabe, int Schluessel) {
String Ausgabe = "";
int i = 0;
while ( i < Eingabe.length()) {
char ktb = Eingabe.charAt(i);
int ktbz = (int) ktb;
int Zahl = Schluessel;
while (Zahl > 26) {
Zahl -= 26;
}
int cbz = ktbz + Zahl;
if (cbz > 90) {
cbz -= 26;
}
char cb = (char) cbz;
Ausgabe += cb;
i += 1;
}
return Ausgabe;
}
public String entschluesseln (String Eingabe, int Schluessel) {
String Ausgabe = "";
int i = 0;
while ( i < Eingabe.length()) {
char ktb = Eingabe.charAt(i);
int ktbz = (int) ktb;
int Zahl = Schluessel;
while (Zahl > 26) {
Zahl -= 26;
}
int cbz = ktbz - Zahl;
if (cbz > 90) {
cbz -= 26;
}
char cb = (char) cbz;
Ausgabe += cb;
i += 1;
}
return Ausgabe;
}
}
Wäre euch für eine Lösung sehr dankbar. Wie gesagt bin Anfänger, bitte gestaltet die Lösung so leicht wie möglich. Danke im Vorraus!