2016-04-01 10 views
-1

Ich habe dieses jButton, das den Text von einem Textbereich zu einem anderen überträgt, aber jetzt muss ich es den Streifen strippen lassen, aber ich weiß nicht, wie man die Streifenfolge anruft. Danke im Voraus!Aufruf von String in der gleichen Klasse

Hier ist der Code:

package encryptor; 

import java.io.File; 
import javax.swing.JFileChooser; 
import java.util.Scanner; 
import java.awt.event.ActionListener; 

public class Encryptor extends javax.swing.JFrame 
{ 
public Encryptor() 
{ 
    initComponents(); 
    setLocationRelativeTo(null); 
} 

private void jButtonEncryptActionPerformed(java.awt.event.ActionEvent evt)            
{             
    jTextAreaTarget.setText(jTextAreaSource.getText()); 
    jButtonEncrypt.addActionListener(new ActionListener()); 
}            

public static String strip(String s) 
{ 
    String target = ""; 
    char[] a = s.toUpperCase().toCharArray(); 
    for (int i = 0; i < a.length; i++) 
    { 
     char c = a[i]; 
     if (c >= 'A' && c <= 'Z') 
     { 
      target += c; 
     } 
    } 
    return target; 
} 
+1

'jTextAreaTarget.setText (Streifen (jTextAreaSource.getText())) '. Ich möchte nicht unhöflich sein, aber Swing ist ziemlich komplex und erfordert, dass man ernsthafte OO- und Threading-Konzepte versteht. Wenn Sie noch nicht wissen, wie Sie eine Methode aufrufen sollen, sollten Sie nicht mit Swing umgehen. Üben Sie an grundlegenden Übungen, die nur auf System.out gedruckt werden. Übrigens ist Ihr Ereignisbehandlungscode nicht sinnvoll. Dies kompiliert nicht einmal. –

+0

Sie sollten Anwendungscode und GUI auch nicht mischen. Verschlüsselung wird nicht mit Swing-Komponenten kombiniert, um Komplexität zu vermeiden (um die Kopplung zu minimieren). –

Antwort

0

Wenn Sie alles aber Alphabete entfernen lassen möchten, dann können Sie wahrscheinlich unter String.replaceAll() mit Regex, siehe das Beispiel verwenden:

String s = "dsakufbsa32321ofbs odsd"; 
System.out.println(s.replaceAll("[^A-Za-z]", "")); 
Verwandte Themen