Java编程:自制花名随机抽取器教程

3 下载量 152 浏览量 更新于2024-08-29 收藏 124KB PDF 举报
本文主要介绍了如何使用Java编程语言创建一个花名随机抽取器,通过简单的步骤和必要的包导入,实现一个具有用户交互界面的应用。该应用允许用户打开包含姓名的文件,选择抽取模式,然后进行随机抽取。 在Java中开发这个随机抽取器,首先需要导入以下包: 1. `java.awt`:包含了基本的图形用户界面(GUI)组件和事件处理类。 2. `javax.swing`:提供更高级的GUI组件,如JButton、JLabel等。 3. `java.awt.event`:用于处理用户与界面交互的事件。 4. `java.io`:用于文件输入输出操作。 5. `java.util`:包含各种实用工具类,如Random,用于生成随机数。 接下来,创建全局对象以表示界面中的各个组件,例如: - `JLabel jl`:显示"文件:"的标签。 - `JTextField jt`:用户输入或显示文件路径的文本字段。 - `JButton OpenButton`:用于打开文件的选择按钮。 - `JTextField jt2`:显示抽取的名单。 - `JButton StartButton`:开始抽取的按钮。 - `JLabel jL`,`JTextField ClassjT`,`JLabel NumjL`,`JTextField NumjT`:用于班级和人数的显示。 - `JLabel jl2`,`JComboBox jc`:显示抽取模式的标签和下拉列表框。 - `JButton AboutButton`:关于按钮。 接着,你需要为这些按钮和组件设置监听事件,例如: 1. “打开文件”按钮监听事件:当用户点击按钮时,触发文件选择对话框,让用户选择包含姓名的文件。 2. “关于”按钮监听事件:弹出一个窗口显示关于此应用的信息。 3. 下拉列表框选择监听事件:根据用户选择的抽取模式进行不同的随机抽取逻辑。 4. “开始抽取”按钮监听事件:读取文件内容,使用`java.util.Random`类生成随机索引,然后在文本框中显示抽取的姓名。 在读取文件并成功获取姓名列表后,程序会在文本框`jt2`中显示随机抽取的姓名。主方法`main`是程序的入口点,负责初始化GUI并设置布局。最后,可能还会提供资源下载链接,以便用户获取源代码或者相关的数据文件。 总结来说,开发这个Java花名随机抽取器涉及到GUI设计、文件操作、事件监听以及随机数生成等知识点,是一个很好的Java初学者项目,能够帮助学习者巩固基础并实践面向对象编程的概念。
2013-12-01 上传
编写一个Java项目,模拟一次包括老师备课,同学上课,布置作业和做作业的课堂教学过程。作业为判断字符串是否为2-重复串及其他字符串操作内容 1. 创建Java项目JavaTeaching2012 2. 创建包cn.qtech.util,在其中新建类RepeatedStringEstimator,该类有两个方法:(1)public boolean estimate(String s),用于判断字符串s是不是2-重复串(字符串中每个出现的字符出现2次且仅两次),如判断aaaa不是,abddab是,acbcab是。(2)public void stringOperate(),其中调用适当的字符串操作完成(a)判断两个字符传”abc”和”acb”是否相同,(b)输出"c:\\java\\jsp\\A.java"中第二次出现"\\j"的位置,并输出该位置起到串末的子串 3. 创建包cn.qtech.teaching,在其中新建抽象类UniversityPeople,包含一个抽象方法void doDuty(TeachingMessage msg),表示某人完成自己的任务。 4. 在包cn.qtech.teaching中创建枚举类型TeachingState,其中包括常量BEIKE, TINGKE, BUZHIZUOYE, ZUOZUOYE,分别表示备课,听课,布置作业,做作业 5. 在包cn.qtech.teaching中创建Student类继承自UniversityPeople,该类有成员变量name及name的getter/setter方法。实现的doDuty(TeachingMessage msg)方法中如果判断msg的状态为BEIKE,则修改msg状态为TINGKE并输出:"老师"+msg中老师对象名+"备完课后,去听课!";如果判断msg的状态为BUZHIZUOYE,则修改msg状态为ZUOZUOYE并输出:"老师"+msg中老师对象名+"布置完课作业后,开始做作业!",然后调用RepeatedStringEstimator中的两个方法输出作业结果 6. 在包cn.qtech.teaching中创建Teacher类继承自UniversityPeople,该类有成员变量name及name的getter/setter方法。实现的doDuty(TeachingMessage msg)方法中如果判断msg的状态为TINGKE,则修改msg状态为BUZHIZUOYE并从msg中获得并输出听课学生名单,然后输出