| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 922 人关注过本帖
标题:程序代码出错,求教
只看楼主 加入收藏
不再
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-9-30
收藏
 问题点数:0 回复次数:5 
程序代码出错,求教
//先讲一下思路:其实我是想玩斗地主时作弊用的 不要骂我哦
//其中all表示所有的牌

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

class dels
{
    static int i=0;
    static int j=0;
     void ca(String all1,String s2)
    {
        for(i=0;i<s2.length();i++)
         {
            for(j=0;j<all1.length();j++)
            {
             if(s2.charAt(i).equals(all1.charAt(j));//字符串s1的第i位与all1的第j位比较,如果相等
               all1.charAt(j-1)=all1.charAt(j);//就删除那个相等的字符。但在这里一直出错
             break;   
            }         
        }
    }
}

public class doudizhu extends Applet implements ActionListener
{
    dels cao=new dels();
    String all=new String("aaaa111122223333444455556666777788889999ttttjjjjqqqqkkkkgw ");
    Label tishi=new Label("提示:所有的牌为a123456789tjqk,小王g大王w");
    Label my=new Label("我的牌");
    TextField mys=new TextField(20);
    Label you=new Label("朋友的牌");
    TextField yous=new TextField(20);
    Label th=new Label("抢牌3张是");
    TextField ths=new TextField(3);
    Button btn=new Button("确定");
    Label emeny=new Label("敌家的牌");
    TextField emenys=new TextField(20);
   
   
    public void init() //将所有的东东添加进来
    {
        add(tishi);
        add(my);add(mys);add(you);add(yous);add(th);add(ths);add(btn);
        add(emeny);add(emenys);
        btn.addActionListener(this);
    }

    public void actionPerformed(ActionEvent e) //按“确定”时触发事件
    {
        String myss=new String(mys.getText());
        String youss=new String(yous.getText());
        String thss=new String(ths.getText());
//逐次减去牌
    cao.ca(all,myss);
    cao.ca(all,youss);
    cao.ca(all,thss);
       emenys.setText(all);  //显示玩家的牌   
    }
   
}
这是我第一次写一个小程序,没想到处处碰壁(我还没看到字符串(还有字符)的处理)
顺便问一下,我想在添加一个“清屏”,重新输入一个怎么写呢

[[italic] 本帖最后由 不再 于 2007-12-17 23:34 编辑 [/italic]]
搜索更多相关主题的帖子: 代码 
2007-12-17 23:23
Eastsun
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:802
专家分:0
注 册:2006-12-14
收藏
得分:0 
不要用String,用StringBuffer,用delete方法

My BlogClick Me
2007-12-18 03:05
YongGG
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-11-16
收藏
得分:0 
String是常量字符串,不能删除其中的字符。用StringBuffer可以解决

让未来到来!
2007-12-18 14:03
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
import java.applet.*;
import java.awt.*;
import java.awt.event.*;

class dels
{
    static int i=0;
    static int j=0;
     void ca(StringBuffer all1,String s2)
    {
        for(i=0;i<s2.length();i++)
         {
            for(j=0;j<all1.length();j++)
            {
             if(s2.charAt(i)==all1.charAt(j))//字符串s1的第i位与all1的第j位比较,如果相等
               all1.deleteCharAt(j);//就删除那个相等的字符。但在这里一直出错                  
            }         
        }
    }
}

 class doudizhu extends Applet implements ActionListener
{
    dels cao=new dels();
    String all=new String("aaaa111122223333444455556666777788889999ttttjjjjqqqqkkkkgw ");
    Label tishi=new Label("提示:所有的牌为a123456789tjqk,小王g大王w");
    Label my=new Label("我的牌");
    TextField mys=new TextField(20);
    Label you=new Label("朋友的牌");
    TextField yous=new TextField(20);
    Label th=new Label("抢牌3张是");
    TextField ths=new TextField(3);
    Button btn=new Button("确定");
    Label emeny=new Label("敌家的牌");
    TextField emenys=new TextField(20);
   
   
    public void init() //将所有的东东添加进来
    {
        add(tishi);
        add(my);add(mys);add(you);add(yous);add(th);add(ths);add(btn);
        add(emeny);add(emenys);
        btn.addActionListener(this);
    }

    public void actionPerformed(ActionEvent e) //按“确定”时触发事件
    {
        String myss=new String(mys.getText());
        String youss=new String(yous.getText());
        String thss=new String(ths.getText());
//逐次减去牌
    StringBuffer all0= new StringBuffer(all);
    cao.ca(all0,myss);
    cao.ca(all0,youss);
    cao.ca(all0,thss);
    emenys.setText(all);  //显示玩家的牌   
    }
   }
我随便改了点,高手指点一下啊.怎么运行呢?我的好象没办法看运行
2007-12-18 14:24
不再
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-9-30
收藏
得分:0 
我把all改为StringBuffer all=new String Buffer("……");
修改后在这里
emenys.setText(all);  //显示玩家的牌
在这里提示can not find symbol:method setText(java.lang.StringBuffer)
要用什么才能输出这个all呢

2007-12-18 15:37
红烧鱼
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-11-24
收藏
得分:0 
emenys.setText(all+"");
2007-12-18 16:34
快速回复:程序代码出错,求教
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018048 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved