2015-10-23 7 views
1

Я пытаюсь создать апплет java swing с помощью NetBeans, который примет такое имя, как Joe Smith и изменит его на Smith, Joe. Однако, когда я запускаю свой апплет, он не меняет имя. Может ли кто-нибудь помочь мне понять это?Java Name Swing Applet

private void submitButtonActionPerformed(java.awt.event.ActionEvent evt) { 
     String name = null; 
     String strName = nameTextField.getText(); 
     if (name == "") { 
      return; 
     } else { 
      outputLabel.setText(convertName(name)); 
     } 
    } 

    public static boolean hasComma(String name) { 
     return name.indexOf(',') >= 0; 
    } 

    public static String convertName(String name) { 
     if (hasComma(name)) { 
      return name; 

     } else { 
      int index = name.indexOf(' '); 
      String first = name.substring(0, index); 
      String last = name.substring(index + 1); 
      String newName = last + ", " + first; 
      return newName; 
     } 
    } 

// Variables declaration - do not modify      
    private javax.swing.JLabel nameLabel; 
    private javax.swing.JTextField nameTextField; 
    private javax.swing.JLabel outputLabel; 
    private javax.swing.JButton submitButton; 
// End of variables declaration  
+0

'name' является нулевым, поэтому большая часть вашего кода не будет работать. Я думаю, вы хотели передать 'strName' функции' convertName', а 'name' становится избыточным. – Arc676

+0

Это сработало! Спасибо! :) –

+0

Зачем нужен апплет? Если это связано с тем, что учитель указал на это, обратитесь к [Почему учителя CS должны ** останавливаться ** преподавать Java-апплеты] (http://programmers.blogoverflow.com/2013/05/why-cs-teachers-should -stop-учебно-ява-апплеты /). –

ответ

0

Строка strName = nameTextField.getText();

, вероятно, следует

имя String = nameTextField.getText();

in submitButtonActionPerformed().

0

Метод сравнения строк: equals. Код смены

name = nameTextField.getText(); 
if ("".equals(name) { 
    return;