?? findprimes.java
字號:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
class FindPrimes extends JFrame implements Runnable ,ActionListener,keyListener{
Thread go;
JLabel howManyLabel = new JLabel("Quantity:");
JTextField howMany = new JTextField("400",10);
JButton display = new JButton("Display primes");
JButton reset = new JButton("Reset");//new
JTextArea primes = new JTextArea(8,40);
FindPrimes(){
super("Find Prime Number");
setSize(400,300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
BorderLayout bord = new BorderLayout();
setLayout(bord);
display.addActionListener(this);
reset.addActionListener(this);
JPanel topPanel = new JPanel();
topPanel.add(howManyLabel);
topPanel.add(howMany);
topPanel.add(display);
topPanel.add(reset);
add(topPanel,BorderLayout.NORTH);
primes.setLineWrap(true);
JScrollPane textPane = new JScrollPane(primes);
add(textPane,BorderLayout.CENTER);
setVisible(true);
}
public void actionPerformed(ActionEvent evt){
String commad = evt.getActionCommand();
if(commad == "Display primes"){
displayPrimes();
}
else if(commad == "Reset"){
clearAllPrimes();
}
}
void displayPrimes(){
if(howMany.getText() != null){
display.setEnabled(false);
if(go == null){
go = new Thread(this);
go.start();
}
}
}
void clearAllPrimes(){
if(go != null){
go = null;
}
reset.setEnabled(true);
display.setEnabled(true);
primes.setText(null);
howMany.setText(null);
}
public void run(){
int quantity = Integer.parseInt(howMany.getText());
int numPrimes = 0;
//candidate:the number that might be prime
int candidate = 2;
primes.append("First" + quantity + " primes:");
while(numPrimes < quantity){
if (isPrime(candidate)){
primes.append(candidate + " ");
numPrimes++;
}
candidate++;
}
}
public static boolean isPrime(int checkNumber){
double root = Math.sqrt(checkNumber);
for(int i = 2 ; i<=root; i++){
if (checkNumber % i==0){
return false;
}
}
return true;
}
public static void main(String[] arguments){
FindPrimes fp = new FindPrimes();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -