08月2日 星期一

来源:互联网 发布:php上传图片压缩大小 编辑:程序博客网 时间:2024/05/17 02:48

08月2日 星期一
讲的最多的是几道题:
先来一道ATM机的:

package HomeWork;import javax.swing.JOptionPane;public class ATM {    public static void main(String[] args) {        int a = 0;        while (a < 3) {            String userName = JOptionPane.showInputDialog("请输入卡号");            String pwd = JOptionPane.showInputDialog("请输入密码");            if (userName.equals("admin") && pwd.equals("123456")) {                JOptionPane.showConfirmDialog(null, "登陆成功");                break;            } else {                a++;                JOptionPane.showMessageDialog(null, "你错误输入:" + a + "次");                if (a == 3) {                    JOptionPane.showMessageDialog(null, "你错误输入超过3次:卡被吞");                }            }        }        //使用了boolean来判断//      int a  = 1;//      boolean login = false;//      while(a<=3){//          String Username = JOptionPane.showInputDialog("请输入卡号");//          String pwd = JOptionPane.showInputDialog("请输入密码");//          if(Username.equals("123")&&pwd.equals("456")){//              login = true;//              break;//          }else{//              a++;//              JOptionPane.showMessageDialog(null, "登陆失败了:"+(a-1)+"次");//          }//      }//      if(login == true){//              JOptionPane.showMessageDialog(null, "登陆成功!");//          }else{//              JOptionPane.showMessageDialog(null, "3次失败,登录失败,吞卡请找银行!");//          }    }}

输入一个数求阶乘:

package HomeWork;import javax.swing.JOptionPane;public class Factorial {    public static void main(String[] args) {        // TODO Auto-generated method stub        String x = JOptionPane.showInputDialog("输入一个数求阶乘!");        int num = Integer.parseInt(x);        int sum = 1;        for (int i = 1; i <= num; i++) {            sum = sum * i;        }        JOptionPane.showMessageDialog(null, "答案是:"+sum);    }}

判断是否为素数:

package Demo;import javax.swing.JOptionPane;public class 只能被1和本身整除的数字_素数 {    public static void main(String[] args) {        String num =  JOptionPane.showInputDialog("输入判斷是否,只能被1和本身整除的数字,最小的素数是2");        int x = Integer.parseInt(num);        boolean YesOrNo = false;            for (int i = 2; i < x; i++) {                if(x % i != 0){                    YesOrNo = true;                }else{                    YesOrNo = false;                    break;                }            }            if(YesOrNo == true || x==2 ){                JOptionPane.showMessageDialog(null, "是");                }            else{                JOptionPane.showMessageDialog(null, "不是");                }    }}

二进制转化成十进制:

package Demo;import javax.swing.JOptionPane;public class 二进制转化成十进制 {    public static void main(String[] args) {        // TODO Auto-generated method stub         String y = JOptionPane.showInputDialog("你要输入的二进制数是");         if(y.matches("[0,1]{1,}")){         int a = 1;         int sum = 0;         int shu = Integer.parseInt(y);         while(shu != 0){             sum = sum + shu % 10 * a;             shu = shu/10;             a = a * 2;         }System.out.println(sum);    }else {        JOptionPane.showMessageDialog(null, "请输入二进制数:0或者1");    }         }}

for循环:

for循环执行的次数是在执行前就确定的。语法格式如下

for(初始化; 布尔表达式; 更新) {    //代码语句}

关于for循环有以下几点说明:

最先执行初始化步骤。可以声明并初始化一个或多个循环控制变量,也可以是空语句。
然后,检测布尔表达式的值。如果为true,循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。
执行一次循环后,更新循环控制变量。
再次检测布尔表达式。循环执行上面的过程。

do…while循环

对于while语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。

do…while循环和while循环相似,不同的是,do…while循环至少会执行一次。

do {       //代码语句}while(布尔表达式);

注意:布尔表达式在循环体的后面,所以语句块在检测布尔表达式之前已经执行了。 如果布尔表达式的值为true,则语句块一直执行,直到布尔表达式的值为false。

while循环

while是最基本的循环,它的结构为:

while( 布尔表达式 ) {    //循环内容}

只要布尔表达式为true,循环体会一直执行下去。

break关键字

break主要用在循环语句或者switch语句中,用来跳出整个语句块。

break跳出最里层的循环,并且继续执行该循环下面的语句。

continue关键字

continue适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。

在for循环中,continue语句使程序立即跳转到更新语句。

在while或者do…while循环中,程序立即跳转到布尔表达式的判断语句。

产生随机数

int a = (int)(Math.random())在0-1之间,可能是0但不可能是1。

0 0