[实验四]
设计思想:
对Java中frame的熟练使用,在面板中输出,添加按钮,利用随机数random(),字符转化后实现输出六位验证码
程序流程图:
代码:
import javax.swing.*;
import java.awt.*;
public class Login extends JFrame {JPanel jp1,jp2,jp3,jp4,jp5;
JLabel jlb1,jlb2,jlb3,jlb4; JButton jb1,jb2; JTextField jtf1,jtf2; JPasswordField jpf; public static void main(String[] args) { Login win = new Login(); } public String Str() { String result=""; for(int i=0;i<6;i++){ int intVal=(int)(Math.random()*26+97); result=result+(char)intVal; } return result; } public Login() { jp1 = new JPanel(); jp2 = new JPanel(); jp3 = new JPanel(); jp4 = new JPanel(); jp5 = new JPanel(); jlb1 = new JLabel("用户名:"); jlb2 = new JLabel(" 密码:"); jlb3 = new JLabel(" 验证码:"); jlb4 = new JLabel(Str()); jb1 = new JButton(" 登录 "); jb2 = new JButton(" 快速注册 "); jtf1 = new JTextField(10); jtf2= new JTextField(10); jpf = new JPasswordField(10); this.setLayout(new GridLayout(5,3)); jp1.add(jlb1); jp1.add(jtf1); jp2.add(jlb2); jp2.add(jpf); jp3.add(jb1); jp5.add(jb2); jp4.add(jlb3); jp4.add(jtf2); jp4.add(jlb4); this.add(jp1); this.add(jp2); this.add(jp4); this.add(jp3); this.add(jp5); this.setTitle("请登录"); this.setSize(400, 250); this.setLocationRelativeTo(null); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setForeground(getForeground()); this.setVisible(true); this.setResizable(false); }}
执行结果:
[实验五]
设计思想:
利用random()随机出现一个整数,在面板中输入一个整数,判断数值大小,如果偏大则输出猜大了,偏小则输出猜小了,猜中则跳出循环;
流程图:
源代码:
import java.util.Scanner;
import javax.swing.JOptionPane;public class Number {/**
* 猜数字游戏 * @param args */ public static void main(String[] args) { // TODO 自动生成的方法存根 String guess; int guessnumber,a=0; int number =(int)(Math.random()*100+1); Scanner input = new Scanner(System.in); do{ guess = JOptionPane.showInputDialog( "Enter your guess" ); guessnumber = Integer.parseInt( guess ); if(guessnumber>number) { JOptionPane.showMessageDialog( null,"你的答案是:"+guessnumber + "。 猜大了", "Results", JOptionPane.PLAIN_MESSAGE ); } if(guessnumber<number) { JOptionPane.showMessageDialog( null,"你的答案是:"+guessnumber + "。 猜小了", "Results", JOptionPane.PLAIN_MESSAGE ); } if(guessnumber==number) { JOptionPane.showMessageDialog( null,"你的答案是:"+guessnumber + "。 猜对了", "Results", JOptionPane.PLAIN_MESSAGE ); System.exit(0); a=1; } }while(a==0); }}
执行结果: