StringBuilder + If

Galera, estou com um problema, tenho que resolver um desafio e já fiz a maioria, porém, não consigo inserir um if dentro do StringBuilder para ele devolver um calculo “se senão” de acordo com o valor que for digitado no inicio.

[code]import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class DesafioAPI {

/**
 * @param args
 */
public static void main(String[] args) {
	// TODO Auto-generated method stub

	final JFrame janela;
	JPanel painel;
	JLabel rotulo;
	final JTextField campo;
	JComboBox<String> combo;
	JButton imposto, salario,classificar,sair;
	
	GridLayout grid;
	
	janela = new JFrame("Calculo de Salário");
	rotulo = new JLabel("Salário: ");
	painel = new JPanel();
	imposto = new JButton("1. Calcular Impostos");
	salario = new JButton("2. Calcular Salário");
	classificar = new JButton("3. Classificar Salário");
	sair = new JButton("4. Sair");
	grid = new GridLayout(0, 2);
	campo = new JTextField(10);
	
	painel.setLayout(grid);
	painel.add(rotulo);
	painel.add(campo);
	
	painel.add(imposto);
	painel.add(salario);
	painel.add(classificar);
	painel.add(sair);
	
	
	imposto.addActionListener(new ActionListener() {
		
		
		public void actionPerformed(ActionEvent e) {
			
		
			StringBuilder b = new StringBuilder();
			b.append(Integer.parseInt(campo.getText()));
						
			if (b > 17){ // Ele fala que não posso usar < no argumento, já tentei converter para int e nada resolve =/
				
			}
				
				
				
			
			JOptionPane.showMessageDialog(janela, b.toString());
			
			
		}
	});
	
	

	
	
	
	
	
	janela.add(painel);
	
	
	janela.setSize(300, 200);
	
	janela.setLocationRelativeTo(null);
	janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	
	
	janela.setVisible(true);
	
}

}
[/code]

É meio estranho, mas use:

[code]if (Integer.parseInt(b.toString()) > 17) {

}[/code]

Boa sorte! :smiley:

Se vc quer ver o tanto de caracteres faça

s.length > 17

Segundo a documentacao da oracle:

[quote]int length()
Returns the length (character count).[/quote]

fonte: http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/StringBuilder.html

Pq vc precisa da StringBuilder para verificar um número digitado? Pq não usar diretamente uma variável int para receber o número?