random不重複
// AWT, JButton類別
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class swingtest1random extends JFrame implements ActionListener
{
static JButton bt1=new JButton("RUN");
static JTextField tf1=new JTextField("1");
static JLabel lb[]=new JLabel[25];
static JButton bt[]=new JButton[25];
String tmp;
String numbers[] = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22","23","24"};
public static void main(String args[])
{
swingtest1random fm=new swingtest1random();
GridLayout gl= new GridLayout(5,5);
JPanel p1 = new JPanel(gl);
JPanel p2 = new JPanel(gl);
JPanel p3 = new JPanel(gl);
String numbers[] = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22","23","24"};
JButton buttons[]=new JButton[25];
fm.setLayout(gl);
fm.setSize(300,225);
fm.add(p1);
fm.add(p2);
fm.add(p3);
for (int i = 0; i < 25; i++)
{
bt[i] = new JButton(numbers[i]);
p1.add(bt[i], gl);
}
fm.setVisible(true);
p2.add(tf1, gl);
p2.add(bt1, gl);
for (int i = 0; i < numbers.length; i++)
{
lb[i] = new JLabel();
p3.add(lb[i], gl);
}
fm.setVisible(true);
bt1.addActionListener(fm);
}
public void actionPerformed(ActionEvent e)
{
//String s1;
//s1=tf1.getText();
//int i1;
//i1 = Integer.parseInt(s1);
for (int i = 0; i < 25; i++)
{
int j=24-i;
int r1=(int) (Math.random()*(j+1));
tmp=numbers[j];
numbers[j]=numbers[r1];
numbers[r1]=tmp;
}
for (int i = 0; i < 25; i++)
{
System.out.println(numbers[i]);
bt[i].setLabel(numbers[i]);
}
/*
for (int i = 0; i < 9; i++)
{
int r1=(int) (Math.random()*9);
//int r2=(int) (Math.random()*9);
System.out.println(r1);
String s1=Integer.toString(r1);
bt[i].setText(s1);
//lb[r1].setText(s1);
}
*/
}
}
==================================================================
輸入100內數字從其中挑25個數
// AWT, JButton類別
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class swingtest1random extends JFrame implements ActionListener
{
static JButton bt1=new JButton("RUN");
static JTextField tf1=new JTextField("1");
static JLabel lb[]=new JLabel[25];
static JButton bt[]=new JButton[25];
String tmp;
public static void main(String args[])
{
swingtest1random fm=new swingtest1random();
GridLayout gl= new GridLayout(5,5);
JPanel p1 = new JPanel(gl);
JPanel p2 = new JPanel(gl);
JPanel p3 = new JPanel(gl);
String numbers[] = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22","23","24"};
JButton buttons[]=new JButton[25];
fm.setLayout(gl);
fm.setSize(300,225);
fm.add(p1);
fm.add(p2);
fm.add(p3);
for (int i = 0; i < 25; i++)
{
bt[i] = new JButton(numbers[i]);
p1.add(bt[i], gl);
}
fm.setVisible(true);
p2.add(tf1, gl);
p2.add(bt1, gl);
for (int i = 0; i < numbers.length; i++)
{
lb[i] = new JLabel();
p3.add(lb[i], gl);
}
fm.setVisible(true);
bt1.addActionListener(fm);
}
public void actionPerformed(ActionEvent e)
{
//String s1;
//s1=tf1.getText();
//int i1;
//i1 = Integer.parseInt(s1);
String numbers[]=new String[101];
for (int i = 0; i <101; i++)
{
numbers[i]=String.valueOf(i);
}
for (int i = 0; i < 25; i++)
{
int j=24-i;
String m1=tf1.getText();
int m2=Integer.parseInt(m1);
int r1=(int) 1+(int)(Math.random()*m2);
tmp=numbers[j];
numbers[j]=numbers[r1];
numbers[r1]=tmp;
}
for (int i = 0; i < 25; i++)
{
System.out.println(numbers[i]);
bt[i].setLabel(numbers[i]);
}
/*
for (int i = 0; i < 9; i++)
{
int r1=(int) (Math.random()*9);
//int r2=(int) (Math.random()*9);
System.out.println(r1);
String s1=Integer.toString(r1);
bt[i].setText(s1);
//lb[r1].setText(s1);
}
*/
}
}
沒有留言:
張貼留言