「斗地主java」斗地主Java亮点

博主:adminadmin 2023-03-22 14:42:08 803

今天给各位分享斗地主java的知识,其中也会对斗地主Java亮点进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java如何写斗地主,只有发牌,出牌动作即可

可以采用JLabel控件,然后把控件显示为相应的图片,设一个结构体,保存各个图片控件的坐标,鼠标点击后,改变相应的图片控件的坐标,然后弄一个结构体数组储存整个牌组的的纸牌信息,调用一个封装好的显示函数,来更新一整个牌组。不知道能不能对单个牌进行鼠标响应,不过我没有想出来要怎么实现,只好每次改变都把整个牌组重绘一下。

求用java编写的斗地主程序就,要求可以在局域网内实现两桌以上同时玩。

客户端:

import java.io.*;

import java.net.*;

import java.awt.*;

import java.awt.event.*;

public class ChatClient extends Frame

{

TextArea ta = new TextArea();

TextField tf = new TextField();

public void launchFrame() throws Exception

{

this.add(ta, BorderLayout.CENTER);

this.add(tf, BorderLayout.SOUTH);

tf.addActionListener(

new ActionListener()

{

public void actionPerformed(ActionEvent ae)

{

try {

String sSend = tf.getText();

if(sSend.trim().length() == 0) return;

ChatClient.this.send(sSend);

tf.setText("");

ta.append(sSend + "\n");

}

catch (Exception e)

}

}

);

this.addWindowListener(

new WindowAdapter()

{

public void windowClosing(WindowEvent e)

{

System.exit(0);

}

}

);

setBounds(300,300,300,400);

setVisible(true);

tf.requestFocus();

}

Socket s = null;

public ChatClient() throws Exception

{

s = new Socket("127.0.0.1", 8888);

launchFrame();

(new Thread(new ReceiveThread())).start();

}

public void send(String str) throws Exception

{

DataOutputStream dos = new DataOutputStream(s.getOutputStream());

dos.writeUTF(str);

}

public void disconnect() throws Exception

{

s.close();

}

public static void main(String[] args) throws Exception

{

BufferedReader br = new BufferedReader (

new InputStreamReader(System.in));

ChatClient cc = new ChatClient();

String str = br.readLine();

while(str != null str.length() != 0)

{

cc.send(str);

str = br.readLine();

}

cc.disconnect();

}

class ReceiveThread implements Runnable

{

public void run()

{

if(s == null) return;

try {

DataInputStream dis = new DataInputStream(s.getInputStream());

String str = dis.readUTF();

while (str != null str.length() != 0)

{

//System.out.println(str);

ChatClient.this.ta.append(str + "\n");

str = dis.readUTF();

}

}

catch (Exception e)

{

e.printStackTrace();

}

}

}

}

服务器:

import java.net.*;

import java.util.*;

import java.io.*;

import java.awt.*;

import java.awt.event.*;

public class ChatServer extends Frame

{

TextArea ta = new TextArea();

public void launchFrame()

{

add(ta, BorderLayout.CENTER);

setBounds(0,0,200,300);

this.addWindowListener(

new WindowAdapter()

{

public void windowClosing(WindowEvent e)

{

System.exit(0);

}

}

);

setVisible(true);

}

ServerSocket server = null;

Collection cClient = new ArrayList();

public ChatServer(int port) throws Exception

{

server = new ServerSocket(port);

launchFrame();

}

public void startServer() throws Exception

{

while(true)

{

Socket s = server.accept();

cClient.add( new ClientConn(s) );

ta.append("NEW-CLIENT " + s.getInetAddress() + ":" + s.getPort());

ta.append("\n" + "CLIENTS-COUNT: " + cClient.size() + "\n\n");

}

}

class ClientConn implements Runnable

{

Socket s = null;

public ClientConn(Socket s)

{

this.s = s;

(new Thread(this)).start();

}

public void send(String str) throws IOException

{

DataOutputStream dos = new DataOutputStream(s.getOutputStream());

dos.writeUTF(str);

}

public void dispose()

{

try {

if (s != null) s.close();

cClient.remove(this);

ta.append("A client out! \n");

ta.append("CLIENT-COUNT: " + cClient.size() + "\n\n");

}

catch (Exception e)

{

e.printStackTrace();

}

}

public void run()

{

try {

DataInputStream dis = new DataInputStream(s.getInputStream());

String str = dis.readUTF();

while(str != null str.length() !=0)

{

System.out.println(str);

for(Iterator it = cClient.iterator(); it.hasNext(); )

{

ClientConn cc = (ClientConn)it.next();

if(this != cc)

{

cc.send(str);

}

}

str = dis.readUTF();

//send(str);

}

this.dispose();

}

catch (Exception e)

{

System.out.println("client quit");

this.dispose();

}

}

}

public static void main(String[] args) throws Exception

{

ChatServer cs = new ChatServer(8888);

cs.startServer();

}

}

(来自BJSXT)

java写的斗地主项目运行时出现connectionrese

客户端地址异常。java是一门面向对象的编程语言,写的斗地主项目运行时出现connectionrese是因为客户端地址异常导致的,需要修改客户端地址。

java斗地主发牌程序

DeckOfCards()构造函数里面,注释掉的

//deck[count]=new Card(faces[count%13],suits[count/13]);

是对的,下面那行除17是错的

另外,没有把大小王赋值到数组里

最后main函数里,打印方法错了。应该为,原本少了一个%-20s

System.out.printf("%-20s%-20s%-20s\n", myDeckOfCards.dealCard(), myDeckOfCards.dealCard(), myDeckOfCards.dealCard());

发牌完成以后剩下的3张牌就是保留的底牌

如何用Java编写斗地主的游戏

这是一个java实现的斗地主,发牌结果的程序,实现3个人十三张牌,然后底牌3张。

*/

import java.util.Arrays;

public class pokerDemo{

public static void main(String[] args) {

/*生成一副牌的数字,简称牌库*/

int[]pkCode=new int[54];

for(int i=0;i54;i++){

pkCode[i]=i;

关于斗地主java和斗地主Java亮点的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。