Java 了解我的素数计算和素数框架的情况
我想找出我的代码出了什么问题,并帮助理解我的素数计算和素数Java 了解我的素数计算和素数框架的情况,java,swing,primes,prime-factoring,Java,Swing,Primes,Prime Factoring,我想找出我的代码出了什么问题,并帮助理解我的素数计算和素数JFrame发生了什么 出于某种原因,计算人员只是说1-100的质数是 我取出系统。退出(0)现在我需要在退出之前点击所有数字。我希望得到的是一个列出所有素数1-100的列表 然后使用编码的素数计算,我需要做一个素数JFrame。我有太多的错误,这是我的第一个问题,其次,由于这些错误,我无法运行项目来查看它 我已经将我的代码发布到素数计算和我的JFrame。如果有人能帮助我们找出问题所在,我们将不胜感激 ****************
JFrame
发生了什么
系统。退出(0)代码>现在我需要在退出之前点击所有数字。我希望得到的是一个列出所有素数1-100的列表李>
JFrame
。我有太多的错误,这是我的第一个问题,其次,由于这些错误,我无法运行项目来查看它JFrame
。如果有人能帮助我们找出问题所在,我们将不胜感激
*********************************************************************************
//Prime Numbers Java Swing JFrame
**********************************************************************************
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class ProgrammingAssignment8 extends JFrame
implements ActionListener
{
//DECLARE BUT DO NOT INSTANTIATE
private JButton calculate;
private JButton clear;
private JButton exit;
//PANELS
private JPanel jpnlMain = new JPanel();
private JPanel jpnlTop = new JPanel();
private JPanel jpnlCenter = new JPanel();
private JPanel jpnlBotton = new JPanel();
private JScrollPane scrollingResult;
//DECLARE JFRAME COMPONENTS
private JLabel jlblName, jlblMaxTest;
private JTextField jtfName, jtfMaxTest;
private JTextArea jtaName, jtaMaxNumbers;
private JButton jbutCalculate, jbutClear, jbutExit;
private CalculateButtonHandler calculateHandler;
private ClearButtonHandler clearHandler;
private ExitButtonHandler exitHandler;
/**
* @param args
*/
//CLASS CONSTRUCTOR
public ProgrammingAssignment8 (String sTitle)
{
//PREPARE THE JFRAME/WINDOW
super(sTitle);
//SET TITLE AND SIZE
setTitle(sTitle);
setSize(400,400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//SET THE LAYOUT
jpnlMain.setLayout(new GridLayout(3,3,5,5));
//INSTANTIATE THE JBUTTONS WITH THE PASSED CAPTION AND COLOR AND ADD TO JPANEL
//PUT INTO A METHOD FOR EFFICIENCY AND TO AVOID REPEATING ALL THE CODE
jbtnCalculate = instantiateJButton("Calculate", Color.red);
jbtnClear = instantiateJButton("Clear", Color.blue);
jbtnExit = instantiateJButton("Exit", Color.black);
//INSTANTIATE THE JLABEL COMPONENTS
jlblName = new JLabel ("");
//PREPARE THE CONTAINER
Container ca = getContentPane();
}
set visible(true);
//END CONSTRUCTOR
private JButton instantiateJButton(String, sInCaption, Color inColor)
{
JButton jbtnButton = new JButton(sInCaption);
jbtnButton.setActionCommand(sInCaption);
jbtnButton.addActionListener(this);
jbtnButton.setForeground(inColor);
jbtnButton.setFont(fontChosenFont);
jpnlMain.add(jbutnButton);
return jbtnButton;
//END INSTANTIATE JBUTTON
//CLASS EVENT HANDLER
public void actionPerformed(java.awt.event.ActionEvent e)
{
//FIND OUT WHICH BUTTON WAS PRESSED BY USING THE ACTION COMMAND VALUE
String sActionCommand = e.getActionCommand();
//FROM THE ACTIONEVENT OBJECT, GET AN INSTANCE OF THE JBUTTON THAT WAS PRESSED
JButton jbtnSource = (JButton) e.getSource();
jbtnSource.setEnabled(false);
//LET THE USER KNOW WHAT BUTTON WAS CLICKED
JOptionPane.showMessageDialog(null, "You pressed the "" sActionCommand + " button", this.getTitle(), JOptionPane.INFORMATION_MESSAGE);
}
//END ACTIONPERFORMED (java.awt.event.ActionEvent e)
//EXECUTION STARTING POINT
public static void main(String[] args)
{
ProgrammingAssignment8 = new ProgrammingAssignment8("Instantiates with a Method");
}
//END main(String[] args)
}
//END ProgrammingAssignment8 CLASS
***********************************************************************************
PRIME NUMBERS CALCULATIONS
***********************************************************************************
import javax.swing.JOptionPane;
public class ProgrammingAssignment7
{
/**
* @param args
* @return
*/
public static void main(String[] args)
{
//Scanner Scan = new Scanner (System.in);
// TODO Auto-generated method stub
//DECLARE VARIABLES
int x = 1;
int i = 1;
int iNumber = 1;
boolean bNotPrime = false;
boolean bIsPrime = true;
int iNumberToTest;
int iPrimeCheck;
int iCounter;
int iResult = 1;
int iFact = 1;
int iLimit = 100;
String OutputStr = null;
System.out.println("Prime numbers between 1 and " + iLimit);
//loop through the numbers one by one
for(i=1; i < 100; i++)
{
bIsPrime = true;
//check to see if the number is prime
for(int j = 2; j < i ; j++){
if(i % j == 0){
bIsPrime = false;
break;
}
}
// print the number
if(bIsPrime)
OutputStr = "The Prime Numbers of 1 - 100 are: " + i + "\n";
JOptionPane.showMessageDialog(null, OutputStr, "PRIME NUMBERS", JOptionPane.INFORMATION_MESSAGE);
//System.out.print(i + "\n" );
//LISTS NUMBERS 1 THROUGH 100, INITIALIZE INTEGER NAMED I, IF IT IS LESS THAN OR EQUAL TO 100 THEN ADD ONE TO THE LOOP
/* for (int i=1; i<=100; i++)
{
System.out.println(i);
}
/* iNumber = 7;
for (iNumber = 1; iNumber <= 100; iNumber++)
iResult = iNumber / 1;
System.out.println(iResult);
/* for ( iNumber = 2; iNumber <= 100; iNumber++ )
{
if ( iNumber % iNumber == 0 )
{
bIsPrime = false;
break;
}
}
return bIsPrime;
}
*/
/* iNumber = 1;
while (iNumber < 100) iNumber++;
{
System.out.print(iNumber + " ");
System.out.println();
for (iNumber = iNumber - 1; iNumber > 2; iNumber++)
{ //divides the number by each number less than the number itself and also greater than 1 (because 1 is a factor of every number, and every number is a factor of itself)
if (iNumber % iNumber != 0)
System.out.println(iNumber + " is a prime number.");
{ //else if the number is evenly divisible by a number other than itself and 1 (we weeded out those cases in the above for statement), then it sets the boolean to be true, and breaks the for loop
bNotPrime = false;
iNumber = 1;
}
}
if (bIsPrime = true)
{ //if the number is not not a prime, then it prints the number and the for loop moves on
}
else if (bNotPrime = false)
{ //otherwise the for loop moves on
System.out.println(iNumber + " is not a prime number.");
*/
}
}
}
*********************************************************************************
//素数Java Swing JFrame
**********************************************************************************
导入javax.swing.*;
导入java.awt.*;
导入java.awt.event.*;
公共类编程赋值8扩展JFrame
实现ActionListener
{
//声明但不实例化
私有按钮计算;
私人按钮清晰;
私人按钮出口;
//面板
private JPanel jpnlMain=new JPanel();
private JPanel jpnlTop=new JPanel();
private JPanel jpnlCenter=new JPanel();
private JPanel jpnlBotton=new JPanel();
私有JScrollPane滚动结果;
//声明JFRAME组件
私有JLabel jlblName,jlblMaxTest;
私有JTextField jtfName、jtfMaxTest;
专用JTextArea jtaName、JTamaxNumber;
私有JButton jbutCalculate、jbutClear、jbutExit;
私有CalculateButtonHandler calculateHandler;
专用ClearButtonHandler clearHandler;
私有ExitButtonHandler exitHandler;
/**
*@param args
*/
//类构造函数
公共编程分配8(字符串缝合)
{
//准备框架/窗口
超级(针线);
//设置标题和大小
标题(针);
设置大小(400400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置布局
jpnlMain.setLayout(新网格布局(3,3,5,5));
//用传递的标题和颜色实例化JBUTTONS并添加到JPANEL
//为提高效率和避免重复所有代码而将其放入方法中
jbtnCalculate=按钮(“计算”,颜色为.red);
jbtnClear=按钮(“清除”,颜色为.blue);
jbtnExit=按钮(“退出”,颜色为.black);
//实例化JLABEL组件
jlblName=新的JLabel(“”);
//准备容器
容器ca=getContentPane();
}
设置为可见(true);
//端构造函数
私有JButton按钮(字符串、sInCaption、彩色)
{
JButton jbtnButton=新JButton(sInCaption);
jbtnButton.setActionCommand(sInCaption);
jbtnButton.addActionListener(这个);
jbtnButton.setForeground(inColor);
jbtnButton.setFont(fontChosenFont);
jpnlMain.add(jbutnButton);
返回按钮;
//结束实例化JBUTTON
//类事件处理程序
public void actionPerformed(java.awt.event.ActionEvent e)
{
//使用操作命令值找出按下的按钮
字符串sActionCommand=e.getActionCommand();
//从ACTIONEVENT对象中,获取按下的JBUTTON的实例
JButton jbtnSource=(JButton)e.getSource();
jbtnSource.setEnabled(false);
//让用户知道单击了什么按钮
JOptionPane.showMessageDialog(null,“您按下了”“sActionCommand+”按钮”,this.getTitle(),JOptionPane.INFORMATION\u消息);
}
//结束已执行的操作(java.awt.event.ActionEvent e)
//执行起点
公共静态void main(字符串[]args)
{
ProgrammingAssignment8=新的ProgrammingAssignment8(“使用方法实例化”);
}
//末端干管(字符串[]参数)
}
//结束编程任务8类
***********************************************************************************
素数计算
***********************************************************************************
导入javax.swing.JOptionPane;
公共课程计划作业7
{
/**
*@param args
*@返回
*/
公共静态void main(字符串[]args)
{
//扫描仪扫描=新扫描仪(System.in);
//TODO自动生成的方法存根
//声明变量
int x=1;
int i=1;
int iNumber=1;
布尔bNotPrime=false;
布尔双素数=真;
int-iNumberToTest;
int iPrimeCheck;
国际数学家;
int-iResult=1;
int-iFact=1;
int-iLimit=100;
字符串OutputStr=null;
System.out.println(“介于1和“+iLimit”之间的素数);
//把数字一个接一个地循环一遍
对于(i=1;i<100;i++)
{
双素数=真;
//检查数字是否为素数
对于(int j=2;j/*对于(int i=1;i您可以将素数存储在一个集合中。例如,看看ArrayList。它类似于一个数组,但会动态增长,因此您不必事先指定大小
如果您有列表,您可以向用户显示该列表。
setVisible(true);
在构造函数外面,不是有效的方法名,它应该是setVisible(true);
,向上移动,使其正好出现在当前的}
之前
***********************************************************************************
PRIME NUMBERS CALCULATIONS
***********************************************************************************
/***********************************************************************************
PRIME NUMBERS CALCULATIONS
***********************************************************************************/