import java.awt.*;
import java.awt.event.*;
import javax.swing.*;public class P622 extends JApplet implements ActionListener {
JTextField inputField, resultField,t1,t2;
JLabel inputLabel, resultLabel;
public void init()
{
inputLabel = new JLabel( "Enter the integer(1-99999):" );
inputField = new JTextField( 5 );
inputField.addActionListener( this );
resultField = new JTextField( 20 );
resultLabel = new JLabel( "Result" );
resultField.setEditable( false );
Container container = getContentPane();
container.setLayout( new FlowLayout() );
container.add( inputLabel );
container.add( inputField );
container.add( resultLabel );
container.add( resultField );
}
public void actionPerformed( ActionEvent actionEvent )
{
int inputNumber =
Integer.parseInt( inputField.getText() );
if ( inputNumber <= 99999 && inputNumber >= 1 )
displayDigits( inputNumber );
}
public int quotient( int a, int b )
{
return a / b;
}
public int remainder( int a, int b )
{
return a % b;
}
public void displayDigits( int number )
{
int divisor = 1, digit;
String result = "";
for ( int i = 1; i < number; i *= 10 )
divisor = i;
while ( divisor >= 1 ) {
digit = quotient( number, divisor );
result += digit + " ";
number = remainder( number, divisor );
divisor = quotient( divisor, 10 );
}
resultField.setText( result ); }
}public void displayDigits( int number )
{
int divisor = 1, digit;
String result = "";
for ( int i = 1; i < number; i *= 10 )
divisor = i;
while ( divisor >= 1 ) {
digit = quotient( number, divisor );
result += digit + " ";
number = remainder( number, divisor );
divisor = quotient( divisor, 10 );
}
resultField.setText( result ); }
这个方法中 WHIILE 调用 quotient ,remainder方法.这一部分不太理解是怎么计算的.
import java.awt.event.*;
import javax.swing.*;public class P622 extends JApplet implements ActionListener {
JTextField inputField, resultField,t1,t2;
JLabel inputLabel, resultLabel;
public void init()
{
inputLabel = new JLabel( "Enter the integer(1-99999):" );
inputField = new JTextField( 5 );
inputField.addActionListener( this );
resultField = new JTextField( 20 );
resultLabel = new JLabel( "Result" );
resultField.setEditable( false );
Container container = getContentPane();
container.setLayout( new FlowLayout() );
container.add( inputLabel );
container.add( inputField );
container.add( resultLabel );
container.add( resultField );
}
public void actionPerformed( ActionEvent actionEvent )
{
int inputNumber =
Integer.parseInt( inputField.getText() );
if ( inputNumber <= 99999 && inputNumber >= 1 )
displayDigits( inputNumber );
}
public int quotient( int a, int b )
{
return a / b;
}
public int remainder( int a, int b )
{
return a % b;
}
public void displayDigits( int number )
{
int divisor = 1, digit;
String result = "";
for ( int i = 1; i < number; i *= 10 )
divisor = i;
while ( divisor >= 1 ) {
digit = quotient( number, divisor );
result += digit + " ";
number = remainder( number, divisor );
divisor = quotient( divisor, 10 );
}
resultField.setText( result ); }
}public void displayDigits( int number )
{
int divisor = 1, digit;
String result = "";
for ( int i = 1; i < number; i *= 10 )
divisor = i;
while ( divisor >= 1 ) {
digit = quotient( number, divisor );
result += digit + " ";
number = remainder( number, divisor );
divisor = quotient( divisor, 10 );
}
resultField.setText( result ); }
这个方法中 WHIILE 调用 quotient ,remainder方法.这一部分不太理解是怎么计算的.
建议使用eclispe调试工具好好分析逻辑