package com; import javax.swing.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Random; public class SuiJiShuLie { public static void main(String[] args){ new window(); } } class window extends JFrame{ window(){ pan p =new pan(); this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); this.setBounds(500,300,500,500); this.setVisible(true); this.add(p); } } class pan extends JPanel implements ActionListener{ JLabel jl1,jl2,jl3,jl4,jl5,jl6; JButton jb1,jb2,jb3,jb4,jb5; JTextArea jta1,jta2; JTextField jt1,jt2,jt3; int[] arr=new int[21]; pan(){ this.setLayout(null); jl1=new JLabel("20个随机数:"); jl2=new JLabel("随机数求和:"); jl3=new JLabel("随机数排列:"); jl6=new JLabel("(从大到小)"); jl4=new JLabel("最大值:"); jl5=new JLabel("最小值:"); jb1=new JButton("20个随机数"); jb2=new JButton("随机数求和"); jb3=new JButton("随机数排列"); jb4=new JButton("最大值"); jb5=new JButton("最小值"); jta1=new JTextArea(); jta2=new JTextArea(); jt1=new JTextField(); jt2=new JTextField(); jt3=new JTextField(); this.add(jl1); this.add(jl2); this.add(jl3); this.add(jl4); this.add(jl5); this.add(jl6); this.add(jb1); this.add(jb2); this.add(jb3); this.add(jb4); this.add(jb5); this.add(jta1); this.add(jta2); this.add(jt1); this.add(jt2); this.add(jt3); jl1.setBounds(20,20,100,20); jl2.setBounds(20,120,100,20); jl3.setBounds(20,70,100,20); jl6.setBounds(20,90,100,20); jl4.setBounds(20,150,100,20); jl5.setBounds(20,180,100,20); jb1.setBounds(20,400,100,20); jb2.setBounds(140,400,100,20); jb3.setBounds(260,400,100,20); jb4.setBounds(140,370,100,20); jb5.setBounds(20,370,100,20); jt1.setBounds(120,120,50,20); jt2.setBounds(120,150,50,20); jt3.setBounds(120,180,50,20); jta1.setBounds(120,20,170,40); jta2.setBounds(120,70,170,40); jb1.addActionListener(this); jb2.addActionListener(this); jb3.addActionListener(this); jb4.addActionListener(this); jb5.addActionListener(this); } public void actionPerformed(ActionEvent e) { String somethings=e.getActionCommand(); switch (somethings){ case "20个随机数": way01(); break; case"随机数求和": way02(); break; case"随机数排列": way05(); break; case"最大值": way03(); break; case"最小值": way04(); break; } } void way01(){ Random rd=new Random(); String s=""; for(int i=0;i<20;i++){ arr[i]=rd.nextInt(100); } for(int i=0;i<20;i++){ if(arr[i]<10){ s="0"+arr[i]+" "+s; }else{ s=arr[i]+" "+s; } if(i==9){ s="\n"+s; } } jta1.setText(s); } void way02(){ int sum=0; for(int i=0;i<20;i++){ sum=arr[i]+sum; } String a = sum+""; jt1.setText(a); } void way03(){ int max=0; for(int i=0;i<20;i++){ if(arr[i]>max){ max=arr[i]; } } String a=max+""; jt2.setText(a); } void way04(){ int min=100; for(int i=0;i<20;i++){ if(arr[i]<min){ min=arr[i]; } } String a=min+""; jt3.setText(a); } void way05(){ for(int i=0;i<20;i++) { for(int j=0;j<20-i;j++){ if(arr[j]>arr[j+1]){ int temp =arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } //首次执行排序后最大值都会变成 00 String s=""; for(int i=0;i<20;i++){ if(arr[i]<10){ s="0"+arr[i]+" "+s; }else{ s=arr[i]+" "+s; } if(i==9){ s="\n"+s; } } jta2.setText(s); } }
每次首次执行排序后最大值都会变成0
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- BCS-点心 2021-04-20 09:17关注
1.大概看了下,这是一个随机产生20个数,然后做一些操作的功能
2.现在排序这里有些问题,你把排序的这个功能单独拿出来到一个测试类中去
3.在测试类里随机生成一个20个数的数组,使用排序功能,如果有问题,就是排序代码的事
解决 无用评论 打赏 举报
悬赏问题
- ¥15 有两个非常“自以为是”烦人的问题急期待大家解决!
- ¥30 STM32 INMP441无法读取数据
- ¥15 R语言绘制密度图,一个密度曲线内fill不同颜色如何实现
- ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
- ¥15 用visualstudio2022创建vue项目后无法启动
- ¥15 x趋于0时tanx-sinx极限可以拆开算吗
- ¥15 pyqt信号槽连接写法
- ¥500 把面具戴到人脸上,请大家贡献智慧,别用大模型回答,大模型的答案没啥用
- ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。
- ¥15 各位 帮我看看如何写代码,打出来的图形要和如下图呈现的一样,急