Java 小程序
我有個(gè)300多行的單機(jī)版五子棋。。不知道你說(shuō)的小程序是指在網(wǎng)頁(yè)上運(yùn)行的,還是代碼量少的程序。
------------------------------
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
classmypanelextendsPanelimplementsMouseListener
intchess[][]=newint[11][11];
booleanIs_Black_True;
mypanel()
Is_Black_True=true;
for(inti=0;i<11;i++)
for(intj=0;j<11;j++)
chess[i][j]=0;
addMouseListener(this);
setBackground(Color.BLUE);
setBounds(0,0,360,360);
setVisible(true);
publicvoidmousePressed(MouseEvente)
intx=e.getX();
inty=e.getY();
if(x<25||x>330+25||y<25||y>330+25)
return;
if(chess[x/30-1][y/30-1]!=0)
return;
if(Is_Black_True==true)
chess[x/30-1][y/30-1]=1;
Is_Black_True=false;
repaint();
Justisewiner();
return;
if(Is_Black_True==false)
chess[x/30-1][y/30-1]=2;
Is_Black_True=true;
repaint();
Justisewiner();
return;
voidDrawline(Graphicsg)
for(inti=30;i<=330;i+=30)
for(intj=30;j<=330;j+=30)
g.setColor(Color.WHITE);
g.drawLine(i,j,i,330);
for(intj=30;j<=330;j+=30)
g.setColor(Color.WHITE);
g.drawLine(30,j,330,j);
voidDrawchess(Graphicsg)
for(inti=0;i<11;i++)
for(intj=0;j<11;j++)
if(chess[i][j]==1)
g.setColor(Color.BLACK);
g.fillOval((i+1)*30-8,(j+1)*30-8,16,16);
if(chess[i][j]==2)
g.setColor(Color.WHITE);
g.fillOval((i+1)*30-8,(j+1)*30-8,16,16);
voidJustisewiner()
intblack_count=0;
intwhite_count=0;
inti=0;
for(i=0;i<11;i++)//橫向判斷
for(intj=0;j<11;j++)
if(chess[i][j]==1)
black_count++;
if(black_count==5)
JOptionPane.showMessageDialog(this,"黑棋勝利");
Clear_Chess();
return;
black_count=0;
if(chess[i][j]==2)
white_count++;
if(white_count==5)
JOptionPane.showMessageDialog(this,"白棋勝利");
Clear_Chess();
return;
white_count=0;
for(i=0;i<11;i++)//豎向判斷
for(intj=0;j<11;j++)
if(chess[j][i]==1)
black_count++;
if(black_count==5)
JOptionPane.showMessageDialog(this,"黑棋勝利");
Clear_Chess();
return;
black_count=0;
if(chess[j][i]==2)
white_count++;
if(white_count==5)
JOptionPane.showMessageDialog(this,"白棋勝利");
Clear_Chess();
return;
white_count=0;
for(i=0;i<7;i++)//左向右斜判斷
for(intj=0;j<7;j++)
for(intk=0;k<5;k++)
if(chess[i+k][j+k]==1)
black_count++;
if(black_count==5)
JOptionPane.showMessageDialog(this,"黑棋勝利");
Clear_Chess();
return;
black_count=0;
if(chess[i+k][j+k]==2)
white_count++;
if(white_count==5)
JOptionPane.showMessageDialog(this,"白棋勝利");
Clear_Chess();
return;
white_count=0;
for(i=4;i<11;i++)//右向左斜判斷
for(intj=6;j>=0;j--)
for(intk=0;k<5;k++)
if(chess[i-k][j+k]==1)
black_count++;
if(black_count==5)
JOptionPane.showMessageDialog(this,"黑棋勝利");
Clear_Chess();
return;
black_count=0;
if(chess[i-k][j+k]==2)
white_count++;
if(white_count==5)
JOptionPane.showMessageDialog(this,"白棋勝利");
Clear_Chess();
return;
white_count=0;
voidClear_Chess()
for(inti=0;i<11;i++)
for(intj=0;j<11;j++)
chess[i][j]=0;
repaint();
publicvoidpaint(Graphicsg)
Drawline(g);
Drawchess(g);
publicvoidmouseExited(MouseEvente){}
publicvoidmouseEntered(MouseEvente){}
publicvoidmouseReleased(MouseEvente){}
publicvoidmouseClicked(MouseEvente){}
classmyframeextendsFrameimplementsWindowListener
mypanelpanel;
myframe()
setLayout(null);
panel=newmypanel();
add(panel);
panel.setBounds(0,23,360,360);
setTitle("單人版五子棋");
setBounds(200,200,360,383);
setVisible(true);
addWindowListener(this);
publicvoidwindowClosing(WindowEvente)
System.exit(0);
publicvoidwindowDeactivated(WindowEvente){}
publicvoidwindowActivated(WindowEvente){}
publicvoidwindowOpened(WindowEvente){}
publicvoidwindowClosed(WindowEvente){}
publicvoidwindowIconified(WindowEvente){}
publicvoidwindowDeiconified(WindowEvente){}
publicclassmywindow
publicstaticvoidmain(Stringargc[])
myframef=newmyframe();
java 小程序
我用NetBeans寫(xiě)的,代碼可能長(zhǎng)了點(diǎn),關(guān)于布局的那部分代碼你可以不用看,一運(yùn)行自然就可以看到界面了,new出對(duì)象之后最重要的是這部分代碼:jCheckBoxAllItemStateChanged(java.awt.event.ItemEventevt){
if(jCheckBoxAll.isSelected()){
this.jCheckBoxApple.setSelected(true);
this.jCheckBoxJuZi.setSelected(true);
this.jCheckBoxBanana.setSelected(true);
this.jCheckBoxPuTao.setSelected(true);
this.jCheckBoxPear.setSelected(true);
}else{
this.jCheckBoxApple.setSelected(false);
this.jCheckBoxJuZi.setSelected(false);
this.jCheckBoxBanana.setSelected(false);
this.jCheckBoxPuTao.setSelected(false);
this.jCheckBoxPear.setSelected(false);
下邊部分是程序全部代碼:
*Tochangethistemplate,chooseTools|Templates
*andopenthetemplateintheeditor.
*Main.java
*Createdon2009-6-3,17:48:53
packagecom.javaeye.bluenight1.allIn;
*@authorBlueNight
publicclassMainextendsjavax.swing.JFrame{
/**CreatesnewformMain*/
publicMain(){
initComponents();
/**Thismethodiscalledfromwithintheconstructorto
*initializetheform.
*WARNING:DoNOTmodifythiscode.Thecontentofthismethodis
*alwaysregeneratedbytheFormEditor.
@SuppressWarnings("unchecked")
//
privatevoidinitComponents(){
jPanel1=newjavax.swing.JPanel();
jCheckBoxApple=newjavax.swing.JCheckBox();
jCheckBoxJuZi=newjavax.swing.JCheckBox();
jCheckBoxBanana=newjavax.swing.JCheckBox();
jCheckBoxPuTao=newjavax.swing.JCheckBox();
jCheckBoxPear=newjavax.swing.JCheckBox();
jCheckBoxAll=newjavax.swing.JCheckBox();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null,"選擇你喜歡的水果",javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,javax.swing.border.TitledBorder.DEFAULT_POSITION,newjava.awt.Font("宋體",0,12),newjava.awt.Color(0,0,204)));//NOI18N
jCheckBoxApple.setText("蘋(píng)果");
jCheckBoxApple.addItemListener(newjava.awt.event.ItemListener(){
publicvoiditemStateChanged(java.awt.event.ItemEventevt){
jCheckBoxAppleItemStateChanged(evt);
jCheckBoxJuZi.setText("桔子");
jCheckBoxJuZi.addItemListener(newjava.awt.event.ItemListener(){
publicvoiditemStateChanged(java.awt.event.ItemEventevt){
jCheckBoxJuZiItemStateChanged(evt);
jCheckBoxBanana.setText("香蕉");
jCheckBoxBanana.addItemListener(newjava.awt.event.ItemListener(){
publicvoiditemStateChanged(java.awt.event.ItemEventevt){
jCheckBoxBananaItemStateChanged(evt);
jCheckBoxPuTao.setText("葡萄");
jCheckBoxPuTao.addItemListener(newjava.awt.event.ItemListener(){
publicvoiditemStateChanged(java.awt.event.ItemEventevt){
jCheckBoxPuTaoItemStateChanged(evt);
jCheckBoxPear.setText("桃子");
jCheckBoxPear.addItemListener(newjava.awt.event.ItemListener(){
publicvoiditemStateChanged(java.awt.event.ItemEventevt){
jCheckBoxPearItemStateChanged(evt);
jCheckBoxAll.setText("全選");
jCheckBoxAll.addItemListener(newjava.awt.event.ItemListener(){
publicvoiditemStateChanged(java.awt.event.ItemEventevt){
jCheckBoxAllItemStateChanged(evt);
javax.swing.GroupLayoutjPanel1Layout=newjavax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jCheckBoxApple)
.addComponent(jCheckBoxJuZi)
.addComponent(jCheckBoxBanana)
.addComponent(jCheckBoxPuTao)
.addComponent(jCheckBoxPear)
.addComponent(jCheckBoxAll))
.addContainerGap(72,Short.MAX_VALUE))
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jCheckBoxApple)
.addGap(18,18,18)
.addComponent(jCheckBoxJuZi)
.addGap(18,18,18)
.addComponent(jCheckBoxBanana)
.addGap(18,18,18)
.addComponent(jCheckBoxPuTao)
.addGap(18,18,18)
.addComponent(jCheckBoxPear)
.addGap(18,18,18)
.addComponent(jCheckBoxAll)
.addContainerGap(20,Short.MAX_VALUE))
javax.swing.GroupLayoutlayout=newjavax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel1,javax.swing.GroupLayout.PREFERRED_SIZE,javax.swing.GroupLayout.DEFAULT_SIZE,javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE))
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel1,javax.swing.GroupLayout.DEFAULT_SIZE,javax.swing.GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE)
.addContainerGap())
pack();
}//
privatevoidjCheckBoxAppleItemStateChanged(java.awt.event.ItemEventevt){
//TODOaddyourhandlingcodehere:
privatevoidjCheckBoxJuZiItemStateChanged(java.awt.event.ItemEventevt){
//TODOaddyourhandlingcodehere:
privatevoidjCheckBoxBananaItemStateChanged(java.awt.event.ItemEventevt){
//TODOaddyourhandlingcodehere:
privatevoidjCheckBoxPuTaoItemStateChanged(java.awt.event.ItemEventevt){
//TODOaddyourhandlingcodehere:
privatevoidjCheckBoxPearItemStateChanged(java.awt.event.ItemEventevt){
//TODOaddyourhandlingcodehere:
privatevoidjCheckBoxAllItemStateChanged(java.awt.event.ItemEventevt){
if(jCheckBoxAll.isSelected()){
this.jCheckBoxApple.setSelected(true);
this.jCheckBoxJuZi.setSelected(true);
this.jCheckBoxBanana.setSelected(true);
this.jCheckBoxPuTao.setSelected(true);
this.jCheckBoxPear.setSelected(true);
}else{
this.jCheckBoxApple.setSelected(false);
this.jCheckBoxJuZi.setSelected(false);
this.jCheckBoxBanana.setSelected(false);
this.jCheckBoxPuTao.setSelected(false);
this.jCheckBoxPear.setSelected(false);
*@paramargsthecommandlinearguments
publicstaticvoidmain(Stringargs[]){
java.awt.EventQueue.invokeLater(newRunnable(){
publicvoidrun(){
newMain().setVisible(true);
//Variablesdeclaration-donotmodify
privatejavax.swing.JCheckBoxjCheckBoxAll;
privatejavax.swing.JCheckBoxjCheckBoxApple;
privatejavax.swing.JCheckBoxjCheckBoxBanana;
privatejavax.swing.JCheckBoxjCheckBoxJuZi;
privatejavax.swing.JCheckBoxjCheckBoxPear;
privatejavax.swing.JCheckBoxjCheckBoxPuTao;
privatejavax.swing.JPaneljPanel1;
//Endofvariablesdeclaration
java小程序
public class Split{static int fun(String s){int count=0;for(String c:s.split("[^aeiou]?")){System.out.printf("%s\n",c);if(!c.isEmpty())++count;}return count;}public static void main(String[] args){Scanner cs=new Scanner(System.in);String s=cs.nextLine();System.out.printf("number is:%d\n",fun(s));
JAVA語(yǔ)言設(shè)計(jì)小程序
5、利用繼承Thread類(lèi)創(chuàng)建三個(gè)線程,線程1輸出三個(gè)“good morning!”,線程2輸出三個(gè)“good afternoon!”,線程3輸出三個(gè)“good night!”,每個(gè)線程輸出一次后休眠100s。在main主線程中創(chuàng)建并啟動(dòng)這三個(gè)線程。源碼如下:public class MyThread extends Thread{ String content = null; public MyThread(String con) { content = con; } public void run() { try {for(int i=0;i<3;i++){System.out.println(content);Thread.sleep(100);} } catch (Exception e) {e.printStackTrace(); } } public static void main(String[] args) { new MyThread("good morning!").start(); new MyThread("good afternoon!").start(); new MyThread("good night!").start(); }}
以上就是【沒(méi)想到!java預(yù)約小程序(JAVA寫(xiě)小程序)】的全部?jī)?nèi)容。


評(píng)論