Mình có viết 1 chương trình java để random 2 đối tượng ở hai vị trí bất kì như sau:
Mã nguồn PHP:
package javademoandroidvn;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.RenderingHints;import java.util.Random;import javax.swing.JFrame;import javax.swing.JPanel;public class Main extends JPanel { //int []a = {0,1}; public int []b = new int[6]; public int []c= new int[6]; @Override public void paint(Graphics g){ super.paint(g); Graphics2D g2d = (Graphics2D) g; g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON); int x=0; Random t= new Random(); int rd1 = t.nextInt(2); int rd2 = t.nextInt(2); int rd3 = t.nextInt(2); int rd4 = t.nextInt(2); int rd5 = t.nextInt(2); b[1]=rd1; b[2]=rd2; b[3]=rd3; b[4]=rd4; b[5]=rd5; int d=0; while(d<2) { if(b[1]==1) { if(d<2) { g2d.fillRect(x, 660 ,40, 40); d++; } } if(b[2]==1) { if(d<2) { g2d.fillRect(x, 520 ,40, 40); d++; } } if(b[3]==1) { if(d<2) { g2d.fillRect(x, 380 ,40, 40); d++; } } if(b[4]==1) { if(d<2) { g2d.fillRect(x, 240 ,40, 40); d++; } } if(b[5]==1) { if(d<2) { g2d.fillRect(x, 100 ,40, 40); d++; } } } } public static void main(String[] args) throws InterruptedException{ JFrame frame = new JFrame(); Main main=new Main(); frame.add(main); frame.setSize(1200,730); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); int i; while (true) { main.repaint(); Thread.sleep(10); } }}
nhưng khi chạy thì nó đã ra vị trí bất kì nhưng không hiểu nó bị lỗi gì mà không tắt được cửa sổ netbean đi , mình ngồi cả buổi tối mà không tìm ra chỗ sai, mong các bạn giúp mình.
ps: mình mới học java được 4-5 tuần nên còn nhiều kiến thức chưa rõ mong các bạn hướng dẫn chi tiết.
View more random threads:
Thông qua phân tích dữ liệu Google từ 86 quốc gia, mới đây, một công ty tại Anh đã công bố bảng xếp hạng kích tấc "cậu nhỏ" của các nước trên thế giới. Kết quả, hầu hết các nước xếp ở nhóm đầu của...
"Chim" của chàng trai Việt thuộc...