随机数入两个数求期中素数和 求大神帮看看代码哪里错了

package exe;

import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class Prime extends Applet implements ActionListener
{
Label l1,l2;
TextField t1,t2;
TextArea T1;
Button b1;
public void init()
{
l1 = new Label("输入第一个数:");
l2 = new Label("输入第二个数:");
t1 = new TextField(20);
t2 = new TextField(20);
T1 = new TextArea(5,30);
b1 = new Button("输出之间素数");
add(l1);
add(t1);
add(l2);
add(t2);
add(b1);
add(T1);
b1.addActionListener(this);
}

public void actionPerformed(ActionEvent e) 
{
     String str1 = t1.getText();
     String str2 = t2.getText();
     int a = Integer.parseInt(str1);
     int b = Integer.parseInt(str2);
     boolean prime = true;
     for(int j = a ; j <= b ; j++)
     {
         for(int i = 0 ; i < j ; i++)
         {
             if( j % i == 0)
             {
                 prime = false;

             }

         }
         if(prime == true)
         {
            String str3 = String.valueOf(j);
            T1.append(str3);
         }

     }

}

}

 for(int j = a ; j <= b ; j++)
     {
         for(int i = 2 ; i < j ; i++)//这里从2开始,0,1都要排除在外
         {
             if( j % i == 0)
             {
                 prime = false;
                                 break;//整除了不是素数,可以跳出循环了,虽然没写没错,不过多计算了。

             }

         }
         if(prime == true)
         {
            String str3 = String.valueOf(j);
            T1.append(str3);
         }

     }

boolean prime = true;
要写在第一个for循环里面。否则后面的判断就有问题了。

素数的定义是不含有2,3,5等质因子啊