当前位置: 首页 > news >正文

重庆建设工程施工安全网/windows优化大师使用方法

重庆建设工程施工安全网,windows优化大师使用方法,b2c所有网站,响应网站先做电脑端以下是引用yqfang310在2006-11-29 12:16:43的发言:而且请不要这样说别人,这样会让别人觉得你很看不起人,真是郁闷!!呵呵,但是这种错误是不可能会发生的啊你是怎么发生的呢?应该不要每次帖一 点点代码,还有,编译器会告诉你错在哪一行,你看源代码的那一行就知道错了而…

以下是引用yqfang310在2006-11-29 12:16:43的发言:

而且请不要这样说别人,这样会让别人觉得你很看不起人,真是郁闷!!

呵呵,

但是这种错误是不可能会发生的啊

你是怎么发生的呢?

应该不要每次帖一 点点代码,还有,编译器会告诉你错在哪一行,你看源代码的那一行就知道错了

而不要想当然的认为是那里错了,也许错的不是jt.setEditable呢

----------------解决方案--------------------------------------------------------

它指的就是jt2啊

import java.io.*;

import java.util.*;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class abc extends JFrame implements ActionListener

{

int ch; //选择项数

int num; //输入num个元素;

int i=0;

int A[];

JTextField jt1=new JTextField(20);

JTextField jt2=new JTextField(20);

JTextField jt3=new JTextField(19);

jt2.setEditable(false);

JLabel lb1=new JLabel("排序算法:(1-冒泡排序;2-选择排序;3-插入排序)");

JLabel lb2=new JLabel("请选择排序算法:");

JLabel lb3=new JLabel("排序元素个数为:");

JLabel lb4=new JLabel("输入要排序的元素:");

JLabel lb5=new JLabel("排序结果如下: ");

static JTextArea ja=new JTextArea(10,20);

ScrollPane jp=new ScrollPane();

JButton btn=new JButton("确定");

String str1=new String();

String str2=new String();

String str3=new String();

abc()

{

Container cp=getContentPane();

cp.setLayout(new FlowLayout(0));

jp.add(ja); //jp容器中加入ja

jp.setSize(250,210);

cp.add(lb1);

cp.add(lb2);

cp.add(jt1);

cp.add(lb3);

cp.add(jt2);

cp.add(lb4);

cp.add(jt3);

cp.add(lb5);

cp.add(jp);

cp.add(btn);

jt1.addActionListener(this);

jt2.addActionListener(this);

jt3.addActionListener(this);

btn.addActionListener(this);

setResizable(false);

setBounds(200,200,350,400);

setVisible(true);

}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==jt1)

{

// try{

str1=jt1.getText();

ch=Integer.parseInt(str1);

// }

// catch(Exception e)

// {

//JOptionPane.showMessageDialog(null, "输入错误", "错误", JOptionPane.ERROR_MESSAGE);

// }

}

if(e.getSource()==jt2)

{

str2=jt2.getText();

num=Integer.parseInt(str2);

A=new int[num];

}

if(e.getSource()==jt3)

{

int a; //定义一个获取数据的变量

if(i

{

str3=jt3.getText();

a=Integer.parseInt(str3);

A[i]=a;

i++;

}

}

if(e.getSource()==btn)

{

switch(ch)

{

case 1:

for(int i=0;i

{

String As=String.valueOf(A[i]);

ja.append(As+'\n');

}

Bubblesort(A);

break;

case 2:

SelectSort(A);break;

case 3:

Insertsort(A);break;

default:

ja.setText("算法选择错误!");

}

}

}

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

{

abc cp=new abc();

cp.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void Bubblesort(int A[])

{

int n = A.length;

int t=0,l=0,q=0;//t记录比较次数,l记录移动次数 ,q为交换次数

int log=0;int temp;

String ts=new String();//用于将t,q,l分别转换为String型,便于输出

String qs=new String();

String ls=new String();

String time=new String();

long ft=System.currentTimeMillis();

for (int i = n-1; i>=1&log==0; i--)

{

log=1;

for (int j = 0; j < i; j++)

{

if (A[j] > A[j + 1])

{

temp = A[j];

A[j] = A[j + 1];

A[j + 1] = temp;

log=0;

l++;

q+=3;

}

t++;

}

}

long lt=System.currentTimeMillis();

ja.append("冒泡算法运行结果为:"+'\n');

time=String.valueOf(lt-ft);

ja.append("运行该算法的时间为:"+time+'\n');

cout(A);

ts=String.valueOf(t);//int转换为String

qs=String.valueOf(t);

ls=String.valueOf(t);

ja.append("该排序算法中数据比较次数为: "+ts+'\n');

ja.append("该排序算法中数据交换次数为: "+qs+'\n');

ja.append("该排序算法中数据移动次数为: "+ls+'\n');

}

public static void SelectSort(int A[])

{

int temp;int t=0,l=0,q=0;

String ts=new String();//用于将t,q,l分别转换为String型,便于输出

String qs=new String();

String ls=new String();

String time=new String();

long ft=System.currentTimeMillis();

for(int i=0;i

{

for(int j=i;j

{

if(A[j]

{

temp = A[j];

A[j] = A[j + 1];

A[j + 1] = temp;

l++;

q+=3;

}

t++;

}

temp = A[A.length-1];

A[A.length-1] = A[i];

A[i] = temp;

l++;

q+=3;

}

long lt=System.currentTimeMillis();

ja.append("选择排序算法运行结果为:"+'\n');

time=String.valueOf(lt-ft);

ja.append("运行该算法的时间为:"+time+'\n');

cout(A);

ts=String.valueOf(t);//int转换为String

qs=String.valueOf(t);

ls=String.valueOf(t);

ja.append("该排序算法中数据比较次数为: "+ts+'\n');

ja.append("该排序算法中数据交换次数为: "+qs+'\n');

ja.append("该排序算法中数据移动次数为: "+ls+'\n');

}

public static void Insertsort(int A[])

{

int k=A.length;

int temp;int t=0,l=0,q=0;

int[] B=new int[k];

B[0]=A[0];

String ts=new String();//用于将t,q,l分别转换为String型,便于输出

String qs=new String();

String ls=new String();

String time=new String();

long ft=System.currentTimeMillis();

for(int i=1;i

{

B[i]=A[i];

for(int j=i;j>=1;j--)

{

if(B[j-1]>B[j])

{

temp=B[j];

B[j]=B[j-1];

B[j-1]=temp;

l++;

q+=3;

}

t++;

}

}

long lt=System.currentTimeMillis();

ja.append("插入排序算法运行结果为:"+'\n');

time=String.valueOf(lt-ft);

ja.append("运行该算法的时间为:"+time+'\n');

cout(B);

ts=String.valueOf(t);//int转换为String

qs=String.valueOf(t);

ls=String.valueOf(t);

ja.append("该排序算法中数据比较次数为: "+ts+'\n');

ja.append("该排序算法中数据交换次数为: "+qs+'\n');

ja.append("该排序算法中数据移动次数为: "+ls+'\n');

}

public static void cout(int A[])

{//实现排序结果的输出

String As=new String();//用于将ing转换为String

ja.append("排序的结果: ");

for(int k=0;k

{

As=String.valueOf(A[k]);

ja.append(A[k]+" ");

}

ja.append(""+'\n');

}

}

你帮我看一下吧,还有,我这个程序一输入汉字就会有问题,只有输入整数才可以,有没有可以捕捉错误的方法,我试了catch(Exception e)怎么不行啊,谢谢

----------------解决方案--------------------------------------------------------

jt2.setEditable(false);

就是这句出问题了

你怎么能把它放到方法外面去呢?

方法外面只能有声明和赋值语句

所以,你把它放入构造函数就没事了

----------------解决方案--------------------------------------------------------

以后一定要记得,养成把事情分成各种方法的习惯

不要什么都在一起完成

因为这样出了问题,哇,一大串代码怎么去排错

写程序如果写得有条理性,排错也方便多了

----------------解决方案--------------------------------------------------------

谢啦,千里版主,之前对你的话有些误会,不好意思啊,在你这里让我学到了许多,谢谢,感激涕零

----------------解决方案--------------------------------------------------------

还有一个问题,这个程序只能输入数字,一输入字符就出错了,能否有什么方法可以将它捕捉到的??

----------------解决方案--------------------------------------------------------

我用了catch(Exception e)怎么不行啊

----------------解决方案--------------------------------------------------------

因为你是想把输入的东西变成int,那如果你输入了非int值,当然会报错啦

----------------解决方案--------------------------------------------------------

我就是想提高我程序的建壮性嘛,有时别人会输成汉字的嘛,这时就会出错了,我的意思是想当用户输入的不是数字时,可以有提示,然后重新输入,只是不知道要怎么弄啦

----------------解决方案--------------------------------------------------------

当然 是捕捉NumberFormatException这个异常啦,捉到它的时候,弹出一个对话框提示用户就可以了,提示它不要输入数字以外的字符

String input=jt1.getText().trim();

try{

int i=Integer.parseInt(input);

}

catch(NumberFormatException ne){

JOptionPane.showMessage(null,"您输入了非数字字符!\n请重新输入!");

}

----------------解决方案--------------------------------------------------------

http://www.jmfq.cn/news/4799989.html

相关文章:

  • 手机做网站时时彩赌博/南京seo公司排名
  • 长沙做网站哪里好/拉新推广怎么做
  • 南头专业的网站建设公司/有什么软件可以推广
  • 建站系统做网站/搜索引擎调词平台哪个好
  • 如何做摄影网站/中国免费网站服务器2020
  • 打开特定的网站特别慢/深圳百度推广seo公司
  • 网站背景图片素材 唯美/seo刷关键词排名工具
  • seo词条/苏州百度搜索排名优化
  • 建设一个网站需要哪些硬件设备/代运营公司排名
  • 外管局网站上做存量权益登记/什么叫seo优化
  • 网站建设人员培训/北京网站优化实战
  • 国外网站为啥速度慢/下载百度网盘app最新版
  • 做网页用的网站/做网页多少钱一个页面
  • 24小时自助建站/高质量外链代发
  • 饰品 东莞网站建设/培训学校资质办理条件
  • 手机网站开发介绍/谷歌广告推广
  • 网站上的验证码怎么做/淘宝关键词工具
  • 2019为赌博网站做代理被判缓刑/网上推广的平台有哪些
  • 北京市建设厅网站/做企业推广
  • 有专门教做家具的网站/朋友圈广告投放
  • 怀化职院网站/志鸿优化网下载
  • java网站开发ssh实例/自己做一个网站要多少钱
  • 怎样将网站开发说清楚/国内重大新闻
  • 淘宝网站开始怎么做/武汉最新消息今天
  • 数字政府与网站内容建设/没有限制的国外搜索引擎
  • 网站建设培训深圳/seo网络推广经理招聘
  • 网站建设 58同城/影视网站怎么优化关键词排名
  • 怎么样做网站代理商/外链工厂 外链
  • wordpress实现登录/家庭优化大师
  • 做影视网站用的封面/举例网络营销的例子