精华内容
下载资源
问答
  • import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入成绩分数:"); int grande = sc.nextInt(); switch ...

    案例一:打印九九乘法表

    代码:

    package com.company;
    
    public class Main {
    
        public static void main(String[] args) {
        //外循环控制输出行和和乘法口诀表左边的数字
            for (int i = 1; i <= 9; i++) {
            //内循环控制输出列,防止出现重复数据
                for (int j = 1; j <= i; j++) {
                    //“\t”制表符。
                    System.out.print(j + "*" + i + "=" + (i * j) + "\t");
                }
                //换行。
                System.out.println();
            }
        }
    }
    

    结果显示:
    在这里插入图片描述

    案例二:打印十行"*"三角形

    代码:

    package com.company;
    
    public class Main {
    
        public static void main(String[] args) {
        //总体的行数
            int line=10;
            //外循环控制三角形的行数
            for (int i = 0; i < line; i++) {
            	//内循环控制每行空格数量:逐步减少
                for (int j = 0; j <line - i ; j++) {
                    System.out.print(" ");
                }
                //控制每行的“* ”:逐步增加
                for(int j = 0; j <= i; j++ ){
                    System.out.print("* ");
                }
                System.out.println();
            }
        }
    }
    

    结果显示在这里插入图片描述

    案例三:判断考试成绩等级

    根据键盘录入分数,判断该成绩等级为“A”还是"B"或“C”或"D"。

    代码

    package com.company;
    
    import java.util.Scanner;
    
    public class Main {
    
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入成绩分数:");
            int grande = sc.nextInt();
            switch (grande /10) {
                case 10:
                case 9:
                    System.out.println("你的成绩等级为:A");
                    break;
                case 8:
                    System.out.println("你的成绩等级为:B");
                    break;
                case 7:
                    System.out.println("你的成绩等级为:C");
                    break;
                case 6:
                    System.out.println("你的成绩等级为:D");
                    break;
                case 5:
                case 4:
                case 3:
                case 2:
                case 1:
                case 0:
                    System.out.println("你的成绩等级为:E");
                    break;
                default:
                    System.out.println("你输入的成绩有误!");
            }
    
        }
    }
    

    结果显示
    在这里插入图片描述

    案例四:逢七过

    从任意一个数字开始报数,当你要报的数字包含7或者是7的倍数的时候就需要说:过。在这里,选择在控制台打印1-100直接的满足逢七必过规则的数据。

    代码:

    package com.company;
    
    public class Main {
    
        public static void main(String[] args) {
           for(int a =1; a<=100; a++){
           /*个位数:a % 10 == 7 
           十位数:a / 10 % 10 ==7
           被7整除:a % 7 == 0
           */
               if(a % 10 == 7 || a / 10 % 10 ==7 || a % 7 == 0){
                   System.out.print(a+" ");
               }
           }
        }
    }
    

    结果显示:
    在这里插入图片描述

    案例五:不死神兔

    有一对兔子,从出生后第3个月祺每个月都生一对兔子,小兔子长到第3个月后每个月又生一对兔子,假设兔子不死,问第20个月的兔子对数为多少?

    规律:从第三个数据开始,每一个数据都是前两个数据之和,第1个数据,第2个数据是已知的。
    1,1,2,3,5…
    arr[0]=1;
    arr[1]=1;
    arr[2]=arr[0]+arr[1];
    arr[3]=arr[1]+arr[2];
    arr[4]=arr[2]+arr[3];

    代码:

    package com.company;
    
    public class Main {
    
        public static void main(String[] args) {
            int[] arr = new int[20];
            arr[0] =1;
            arr[1] =1;
           for(int x = 2; x<arr.length; x++){
               arr[x] =arr[x-2] + arr[x-1];
           }
            System.out.println("第20个月兔子的对数是:" + arr[19]);
        }
    }
    
    

    结果显示:
    在这里插入图片描述

    案例六:百钱百鸡

    我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一,百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?

    分析:假设鸡翁为x只,鸡母为y只,鸡雏为z只。
    则:x+y+z=100,5x+3y+z/3=100
    其中隐含条件:0<= x<=20,0<= y<=33,0<= z <=1000

    代码

    package com.company;
    
    public class Main {
        public static void main(String[] args) {
        for(int x = 0;x <= 20; x++){
            for(int y =0; y <= 33; y++){
                int z= 100-x-y;
                if(z % 3 == 0 && 5*x + 3*y +z/3 == 100){
                    System.out.println("鸡翁"+x+" , "+"鸡母"+y+" , "+"鸡雏"+z);
                }
            }
        }
        }
    }
    

    结果显示
    在这里插入图片描述

    展开全文
  • JAVA 基础案例练习

    2021-04-20 15:48:39
    import java.util.Scanner; public class Test { public static void main(String[] args) { Random suiji = new Random(); int num = suiji.nextInt(100); System.out.println(num); Scanner shuru = ...

    求偶数和

    package 求偶数和;
    
    //需求:求1-100之间的偶数和
    public class Test {
    	public static void main(String[] args) {
    		int i=0;
    		int total = 0;
    		for (i=0;i<=100;i++) {
    			if(i%2 == 0) {
    				total += i;
    			}
    		}
    		System.out.println(total);
    	}
    }
    
    2550
    

    水仙花

    package 水仙花;
    //水仙花数的个位i,十位,百位的立方和等于原数
    public class Test {
    	public static void main(String[] args) {
    		int i;
    		int a,b,c;
    		for(i=100;i<1000;i++) {
    			a = i/100;//百位
    			b = (i%100)/10;//十位
    			c = (i%100)-(b*10);//个位
    			a = a*a*a;
    			b = b*b*b;
    			c = c*c*c;
    			if((a+b+c) == i) {
    				System.out.println(i);
    			}
    		}
    	}
    }
    
    153
    370
    371
    407
    

    统计水仙花数

    package 统计;
    //统计水仙花数有几个
    public class Test {
    	public static void main(String[] args) {
    		int i;
    		int total = 0;
    		int a,b,c;
    		for(i=100;i<1000;i++) {
    			a = i/100;//百位
    			b = (i%100)/10;//十位
    			c = (i%100)-(b*10);//个位
    			a = a*a*a;
    			b = b*b*b;
    			c = c*c*c;
    			if((a+b+c) == i) {
    				System.out.println(i);
    				total++;
    			}
    		}
    		System.out.println(total);
    	}
    }
    
    153
    370
    371
    407
    4
    

    猜数字

    package 猜数字;
    
    import java.util.Random;
    import java.util.Scanner;
    
    public class Test {
    	public static void main(String[] args) {
    		Random suiji = new Random();
    		int num = suiji.nextInt(100);
    		System.out.println(num);
    		
    		Scanner shuru = new Scanner(System.in);
    		int p = shuru.nextInt();
    		
    		if(p == num) {
    			System.out.println("恭喜你猜中了");
    		}else if(p>num) {
    			System.out.println("你猜的数据大了");
    		}else {
    			System.out.println("你猜的数据小了");
    		}
    	}
    }
    
    82
    88
    你猜的数据大了
    

    减肥计划

    package 减肥计划;
    
    import java.util.Scanner;
    
    public class Test {
    	public static void main(String[] args) {
    		Scanner scanf = new Scanner(System.in);
    		int num = scanf.nextInt();
    		/*
    		if(num == 1) {
    			System.out.println("跑步");
    		}
    		if(num == 2) {
    			System.out.println("游泳");
    		}
    		if(num == 3) {
    			System.out.println("慢走");
    		}
    		if(num == 4) {
    			System.out.println("动感单车");
    		}
    		if(num == 5) {
    			System.out.println("拳击");
    		}
    		if(num == 6) {
    			System.out.println("爬山");
    		}
    		if(num == 7) {
    			System.out.println("好好吃一顿");
    		}
    		*/
    		switch(num) {
    		case 1:System.out.println("跑步");
    			break;
    		case 2:System.out.println("游泳");
    			break;
    		case 3:System.out.println("慢走");
    			break;
    		case 4:System.out.println("动感单车");
    			break;
    		case 5:System.out.println("拳击");
    			break;
    		case 6:System.out.println("爬山");
    			break;
    		case 7:System.out.println("好好吃一顿");
    			break;
    		default:System.out.println("输入错误");
    		}
    	}
    }
    
    0
    输入错误
    

    逢七过

    package 逢七过;
    //不能包含7也不能被7整除
    public class Test {
    	public static void main(String[] args) {
    		int i;
    		for(i=1;i<100;i++) {
    			if(i%10==7 || i/10%10==7 || i%7==0) {
    				System.out.println(i);
    			}
    		}
    		System.out.println("total = "+total);
    	}
    }
    
    7 14 17 21 27 28 35 37 42 47 49 56 57 63 67 70 71 72 73 74 75 76 77 78 79 84 87 91 97 98 total = 30
    

    不死神兔

    package 不死神兔;
    //有一对兔子,从出生后第三个月起每个月都生一对兔子,小兔子长到第三个月后又生一对兔子
    //加入兔子都不死,问第二十个月的兔子对数是多少?
    public class Test {
    	public static void main(String[] args) {
    		int[] array = new int[20];
    		//第一个月和第二个月兔子数量是已知的
    		array[0] = 1;
    		array[1] = 1;
    		
    		for(int i=2;i<array.length;i++) {
    			array[i] = array[i-1] + array[i-2];
    		}
    		System.out.println(array[19]);
    	}
    }
    
    6765
    

    百钱百鸡

    package 百钱百鸡;
    //公鸡5钱一只,母鸡3钱一只,小鸡1钱三只,问一百块钱一百只鸡,公鸡,母鸡,小鸡多少只
    public class Test {
    	public static void main(String[] args) {
    		for(int a=0;a<=20;a++) {
    			for(int b=0;b<=30;b++) {
    				int z = 100-a-b;
    				if(z%3==0 && 5*a+3*b+z/3==100) {
    					System.out.println("a="+a+" b="+b+" z="+z);
    				}
    			}
    		}
    	}
    }
    
    a=0 b=25 z=75
    a=4 b=18 z=78
    a=8 b=11 z=81
    a=12 b=4 z=84
    

    数组元素求和

    package 数组元素求和;
    //数组元素有这些{68,27,95,88,171,996,51,210},个位十位不能为7,并且要偶数,所有数加起来
    public class Test {
    	public static void main(String[] args) {
    		int[] array = {68,27,95,88,171,996,51,210};
    		int i;
    		int total = 0;
    		
    		for(i=0;i<array.length;i++) {
    			if(array[i]%10!=7 && array[i]/10%10!=7 && array[i]%2==0) {
    				total += array[i];
    			}
    		}
    		System.out.println("total = "+total);
    	}
    }
    
    total = 1362
    

    判断数组内容是否相同

    package 数组内容相同;
    
    public class Test {
    	public static void main(String[] args) {
    		int[] arr1 = {1,2,3};
    		int[] arr2 = {1,2,3};
    		boolean flag = panduan(arr1,arr2);
    		System.out.println(flag);
    	}
    	static boolean panduan(int arr1[],int arr2[])
    	{
    		if(arr1.length != arr2.length) {
    			return false;
    		}
    		for(int i=0;i<arr1.length;i++) {
    			if(arr1[i] == arr2[i]) {
    				System.out.println("第"+(i+1)+"位相同");
    			}else {
    				System.out.println("不同");
    				return false;
    			}
    		}
    		return true;
    	}
    }
    
    1位相同
    第2位相同
    第3位相同
    true
    

    查找

    package 查找;
    
    import java.util.Scanner;
    
    public class Test {
    	public static void main(String[] args) {
    		int[] arr = {9,28,37,46,50};
    		
    		Scanner sc = new Scanner(System.in);
    		int select = sc.nextInt();
    		/*
    		for(int i=0;i<arr.length;i++) {
    			if(select == arr[i]) {
    				System.out.println("arr["+i+"]");
    				break;
    			}
    		}*/
    		
    		int k = Select(select,arr);
    		if(k != -1) {
    			System.out.println("arr["+k+"]");
    		}else {
    			System.out.println("未查到");
    		}
    	}
    	
    	static int Select(int num,int[] array) {
    		for(int i=0;i<array.length;i++) {
    			if(num == array[i]) {
    				return i;
    			}
    		}
    		return -1;
    	}
    }
    
    50
    arr[4]
    

    反转

    package 反转;
    //反转数组元素
    public class Test {
    	public static void main(String[] args) {
    		int[] arr = {19,28,37,46,50};
    		int[] tmp = null;
    		tmp = new int[2];
    
    		int b = arr.length - 1;
    		
    		for(int i=0;i<arr.length/2;i++) {
    			if(i == b) {
    				break;
    			}
    			tmp[0] = arr[i];
    			arr[i] = arr[b];
    			arr[b] = tmp[0];
    			b--;
    		}
    		for(int i=0;i<arr.length;i++) {
    			System.out.println(arr[i]);
    		}
    	}
    }
    
    50 46 37 28 19 
    

    评委打分

    package 评委打分;
    
    import java.util.Scanner;
    
    public class Test {
    	public static void main(String[] args) {
    		int[] fenshu = new int[6];
    		//Scanner sc = new Scanner(System.in);
    		
    		//6位评委打分
    //		for(int i=0;i<fenshu.length;i++) {
    //			System.out.println("第"+(i+1)+"个评委打分");
    //			fenshu[i] = sc.nextInt();
    //		}
    		
    		pingwei(fenshu);
    		suanfa(fenshu);
    		
    		
    //		for(int i=0;i<fenshu.length;i++) {
    //			if(max<fenshu[i]) {//找最大值
    //				max = fenshu[i];
    //			}
    //			if(min>fenshu[i]) {//找最小值
    //				min = fenshu[i];
    //			}
    //			total += fenshu[i]; //总分
    //		}
    //		System.out.println("total = "+(total-min-max)/4);//总分减去最大值最小值再平均
    	}
    	
    	static void pingwei(int arr[]) {
    		Scanner sc = new Scanner(System.in);
    		for(int i=0;i<arr.length;i++) {
    			System.out.println("第"+(i+1)+"个评委打分");
    			arr[i] = sc.nextInt();
    		}
    	}
    	
    	static void suanfa(int arr[]) 
    	{
    		int max = arr[0];
    		int min = arr[0];
    		int total = 0;
    		
    		for(int i=0;i<arr.length;i++) {
    			if(max<arr[i]) {//找最大值
    				max = arr[i];
    			}
    			if(min>arr[i]) {//找最小值
    				min = arr[i];
    			}
    			total += arr[i]; //总分
    		}
    		System.out.println("total = "+(total-min-max)/4);//总分减去最大值最小值再平均
    	}
    	
    }
    
    1个评委打分
    992个评委打分
    953个评委打分
    934个评委打分
    875个评委打分
    656个评委打分
    96
    total = 92
    

    用户登录

    package 用户登录;
    
    import java.util.Scanner;
    
    public class Test {
    	public static void main(String[] args) {
    		String usename = "bhunji";
    		String password = "vgycft";
    		
    		for(int i=0;i<3;i++) 
    		{
    			Scanner sc = new Scanner(System.in);
    			
    			System.out.println("请输入你的账号");
    			String init = sc.next();
    			
    			System.out.println("请输入你的密码");
    			String pupt = sc.next();
    			
    			if(usename.equals(init) && password.equals(pupt)) 
    			{
    				System.out.println("登录成功");
    				break;
    			}
    			if(2-i != 0) {
    				System.out.println("用户名或密码错误,请重新输入,你还有"+(2-i)+"次机会");
    			}else {
    				System.out.println("输入超过三次,用户冻结");
    			}
    		}
    	}
    }
    
    请输入你的账号
    asd
    请输入你的密码
    vf
    用户名或密码错误,请重新输入,你还有2次机会
    请输入你的账号
    bhunji
    请输入你的密码
    vgycft
    登录成功
    

    遍历字符串

    package 遍历字符串;
    //把字符串里的数一个一个输出
    import java.util.Scanner;
    
    public class Test {
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		String name = sc.next();
    		
    		for(int i=0;i<name.length();i++) 
    		{
    			System.out.println(name.charAt(i));
    		}
    	}
    }
    
    asad
    a s a d 
    

    统计字符次数

    package 统计字符次数;
    
    import java.util.Scanner;
    
    public class Test {
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		System.out.println("请输入一个字符串");
    		String name = sc.next();
    		
    		int total =0;
    		
    		for(int i=0;i<name.length();i++)
    		{
    			//判断字符是否是0-9,没用'0'这样的字符形式,我用的ASCii码
    			if(name.charAt(i) >= 48 && name.charAt(i) <= 59)
    			{
    				total++;
    			}
    			//判断字符是否是大写字母
    			if(name.charAt(i) >= 65 && name.charAt(i) <= 90)
    			{
    				total++;
    			}
    			//判断字符是否是小写字母
    			if(name.charAt(i) >= 97 && name.charAt(i) <= 122)
    			{
    				total++;
    			}
    		}
    		System.out.println("total = "+total);
    	}
    }
    
    请输入一个字符串
    AaZz190``-sda
    total = 10
    

    二月天

    package 二月天;
    
    import java.util.Calendar;
    import java.util.Scanner;
    
    public class Test {
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		System.out.println("请输入年份");
    		int year = sc.nextInt();
    		
    		Calendar c = Calendar.getInstance();
    		c.set(year, 2, 1);
    		
    		c.add(Calendar.DATE, -1);
    		
    		int date = c.get(Calendar.DATE);
    		
    		System.out.println(year+"年的二月有"+date);
    	}
    }
    
    请输入年份
    2021
    2021年的二月有28
    
    展开全文
  • Java案例:输入一个字符串,要求统计字符串中每个字符串出现的次数需求:结果预览:思路:原码: 需求: 键盘录入一个字符串,要求统计字符串中每个字符串出现的次数。 举例:键盘录入“aababcabcdabcde” 在控制台...

    Java小案例:输入一个字符串,要求统计字符串中每个字符串出现的次数

    需求:

    键盘录入一个字符串,要求统计字符串中每个字符串出现的次数。
    举例:键盘录入“aababcabcdabcde”
    在控制台输出:“a(5)b(4)c(3)d(2)e(1)"

    结果预览:

    在这里插入图片描述

    思路:

    1 :键盘录入一个字符串
    2:创建HashMap集合,键是character,值是Integer
    3:遍历字符串,得到每一个字符
    4 :拿得到的每一个字符作为键到HashMap集合中去找对应的值,看其返回值
    如果返回值是null,说明该字符在HashMap集合中不存在,就把该字符作为键,1作为值存储
    如果返回值不是null,说明该字符在HashMap集合中存在,把该值加1,然后重新存储该字符和对应的值
    5:遍历HashMap集合,得到键和值,按照要求进行拼接
    6:输出结果

    原码:

    package 小案例练习.简单案例;
    import java.util.*;
    /*需求:
    键盘录入一个字符串,要求统计字符串中每个字符串出现的次数。
    举例:键盘录入“aababcabcdabcde”在控制台输出:“a(5)b(4)c(3)d(2)e(1)"
    思路:
    1 :键盘录入一个字符串
    2:创建HashMap集合,键是character,值是Integer
    3:遍历字符串,得到每一个字符
    4 :拿得到的每一个字符作为键到HashMap集合中去找对应的值,看其返回值
    如果返回值是null,说明该字符在HashMap集合中不存在,就把该字符作为键,1作为值存储
    如果返回值不是null,说明该字符在HashMap集合中存在,把该值加1,然后重新存储该字符和对应的值
    5:遍历HashMap集合,得到键和值,按照要求进行拼接
    6:输出结果
    */
    public class Test26StringTimes {
        public static void main(String[] args) {
            //从键盘录入
            System.out.println("请输入一个字符串");
            Scanner sc =new Scanner(System.in);
            String s = sc.nextLine();
            //创建HashMap集合对象(键值无排序)  TreeMap有排序
            TreeMap<Character,Integer> hm=new TreeMap<>();
            //遍历字符串
            for(int i=0;i<s.length();i++){
                char key = s.charAt(i);
                //拿得到的每一个字符作为键到HashMap集合中去找对应的值,看其返回值
                Integer value = hm.get(key);
                if(value ==null){
    
                    hm.put(key,1);
                }else{
                    value++;
                    hm.put(key,value);
    
                }
            }
            //遍历集合
         
            StringBuilder sb=new StringBuilder();
            Set<Character> keySet = hm.keySet();
            for(Character key:keySet){
    
                Integer value = hm.get(key);
                sb.append(key).append("(").append(value).append(")");
    
            }
            System.out.println(sb.toString());
    
        }
        
    }
    
    
    展开全文
  • 代码如下import java.applet.Applet;import java.applet.AudioClip;import java.awt.Dimension;import java.awt.Font;import java.awt.Toolkit;import javax.swing.JFrame;import javax.swing.JPanel;import java....

    代码如下

    import java.applet.Applet;

    import java.applet.AudioClip;

    import java.awt.Dimension;

    import java.awt.Font;

    import java.awt.Toolkit;

    import javax.swing.JFrame;

    import javax.swing.JPanel;

    import java.awt.Rectangle;

    import javax.swing.BorderFactory;

    import javax.swing.JButton;

    import javax.swing.JOptionPane;

    import javax.swing.JSlider;

    import javax.swing.JLabel;

    import javax.swing.UIManager;

    import javax.swing.event.ChangeEvent;

    import javax.swing.event.ChangeListener;

    import java.awt.event.ActionEvent;

    import java.awt.event.ActionListener;

    import java.awt.event.KeyAdapter;

    import java.awt.event.KeyEvent;

    import java.io.File;

    import java.util.Vector;

    public class Main extends JFrame implements Runnable {

    private static final long serialVersionUID = -2831332650077025158L;

    JPanel contentPane;

    JPanel jPanel1 = new JPanel();

    JButton jButton1 = new JButton();

    JSlider jSlider1 = new JSlider();

    JLabel jLabel1 = new JLabel();

    JButton jButton2 = new JButton();

    JLabel jLabel2 = new JLabel();

    int count = 1, rapidity = 5;

    int zhengque = 0, cuowu = 0;

    int rush[] = { 10, 20, 30 };

    int rush_count = 0;

    char list[] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L',

    'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y',

    'Z', '1', '2', '3', '4', '5', '6', '7', '8', '9' };

    Vector number = new Vector();

    String paiduan = "true";

    AudioClip Musci_anjian, Music_shibai, Music_chenggong;

    public Main() {

    try {

    setDefaultCloseOperation(EXIT_ON_CLOSE);

    // -----------------声音文件---------------------

    Musci_anjian = Applet.newAudioClip(new File("sounds//anjian.wav")

    .toURL());

    Music_shibai = Applet.newAudioClip(new File("sounds//shibai.wav")

    .toURL());

    Music_chenggong = Applet.newAudioClip(new File(

    "sounds//chenggong.wav").toURL());

    // ---------------------------------------

    jbInit();

    } catch (Exception exception) {

    exception.printStackTrace();

    }

    }

    /**

    * 初始化

    *

    * @throws Exception

    */

    private void jbInit() throws Exception {

    contentPane = (JPanel) getContentPane();

    contentPane.setLayout(null);

    setSize(new Dimension(588, 530));

    setTitle("Frame Title");

    jPanel1.setBorder(BorderFactory.createEtchedBorder());

    jPanel1.setBounds(new Rectangle(4, 4, 573, 419));

    jPanel1.setLayout(null);

    jButton1.setBounds(new Rectangle(277, 442, 89, 31));

    jButton1.setText("开始");

    jButton1.addActionListener(new Frame1_jButton1_actionAdapter(this));

    jSlider1.setBounds(new Rectangle(83, 448, 164, 21));

    jSlider1.setMaximum(100);

    jSlider1.setMinimum(0);

    jSlider1.setValue(95);

    jLabel1.setText("速度");

    jLabel1.setBounds(new Rectangle(35, 451, 39, 18));

    jButton2.setBounds(new Rectangle(408, 442, 89, 31));

    jButton2.setText("结束");

    jButton2.addActionListener(new Frame1_jButton2_actionAdapter(this));

    jLabel2.setText("第一关:10个");

    jLabel2.setBounds(new Rectangle(414, 473, 171, 21));

    contentPane.add(jPanel1);

    contentPane.add(jButton2);

    contentPane.add(jButton1);

    contentPane.add(jSlider1);

    contentPane.add(jLabel1);

    contentPane.add(jLabel2);

    this.addKeyListener(new MyListener());

    jButton1.addKeyListener(new MyListener());

    jSlider1.addKeyListener(new MyListener());

    jSlider1.addChangeListener(new ChangeListener() {

    public void stateChanged(ChangeEvent e) {

    rapidity = 100 - jSlider1.getValue();

    }

    });

    }

    /**

    * 主线程

    */

    public void run() {

    number.clear();

    zhengque = 0;

    cuowu = 0;

    paiduan = "true";

    while (count <= rush[rush_count]) {

    try {

    Thread t = new Thread(new Tthread());

    t.start();

    count += 1;

    Thread.sleep(50 + (int) (Math.random() * 500)); // 生产下组停顿时间

    // 最快0.05秒.最慢0.5秒

    } catch (InterruptedException e) {

    e.printStackTrace();

    }

    }

    while (true) { // 等待最后一个字符消失

    if (number.size() == 0) {

    break;

    }

    }

    if (zhengque == 0) { // 为了以后相除..如果全部正确或者错误就会出现错误. 所以..

    zhengque = 1;

    }

    if (paiduan.equals("true")) { // 判断是否是自然结束

    if (cuowu <= 2) { // 错误不超过2个的过关

    JOptionPane.showMessageDialog(null, "恭喜你过关了");

    rush_count += 1; // 自动加1关

    if (rush_count < rush.length) {

    if (rapidity > 10) { // 当速度大于10的时候在-5提加速度.怕速度太快

    rapidity -= 5; // 速度自动减10毫秒

    jSlider1.setValue(rapidity); // 选择位置

    }

    Thread t = new Thread(this);

    t.start();

    } else {

    JOptionPane.showMessageDialog(null, "牛B...你通关了..");

    rush_count = 0;

    count = 0;

    }

    } else {

    JOptionPane.showMessageDialog(null, "请再接再励");

    rush_count = 0;

    count = 0;

    }

    } else {

    rush_count = 0;

    count = 0;

    }

    }

    public void jButton1_actionPerformed(ActionEvent e) {

    Thread t = new Thread(this);

    t.start();

    }

    public void jButton2_actionPerformed(ActionEvent e) {

    count = rush[rush_count] + 1;

    paiduan = "flase";

    }

    /**

    * 字符下移线程

    */

    class Tthread implements Runnable {

    public void run() {

    boolean fo = true;

    int Y = 0, X = 0;

    JLabel show = new JLabel();

    show.setFont(new java.awt.Font("宋体", Font.PLAIN, 33));

    jPanel1.add(show);

    X = 10 + (int) (Math.random() * 400);

    String parameter = list[(int) (Math.random() * list.length)] + "";

    Bean bean = new Bean();

    bean.setParameter(parameter);

    bean.setShow(show);

    number.add(bean);

    show.setText(parameter);

    while (fo) {

    // ---------------------字符下移--------------------

    show.setBounds(new Rectangle(X, Y += 2, 33, 33));

    try {

    Thread.sleep(rapidity);

    } catch (InterruptedException e) {

    e.printStackTrace();

    }

    if (Y >= 419) {

    fo = false;

    for (int i = number.size() - 1; i >= 0; i--) {

    Bean bn = ((Bean) number.get(i));

    if (parameter.equalsIgnoreCase(bn.getParameter())) {

    cuowu += 1;

    jLabel2.setText("正确:" + zhengque + "个,错误:" + cuowu

    + "个");

    number.removeElementAt(i);

    Music_shibai.play();

    break;

    }

    }

    }

    }

    }

    }

    /**

    * 键盘监听器

    *

    */

    class MyListener extends KeyAdapter {

    public void keyPressed(KeyEvent e) {

    String uu = e.getKeyChar() + "";

    for (int i = 0; i < number.size(); i++) {

    Bean bean = ((Bean) number.get(i));

    if (uu.equalsIgnoreCase(bean.getParameter())) {

    zhengque += 1;

    number.removeElementAt(i);

    bean.getShow().setVisible(false);

    jLabel2.setText("正确:" + zhengque + "个,错误:" + cuowu + "个");

    Music_chenggong.play();

    break;

    }

    }

    Musci_anjian.play();

    }

    }

    public static void main(String[] args) {

    try {

    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

    } catch (Exception exception) {

    exception.printStackTrace();

    }

    Main frame = new Main();

    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

    Dimension frameSize = frame.getSize();

    if (frameSize.height > screenSize.height) {

    frameSize.height = screenSize.height;

    }

    if (frameSize.width > screenSize.width) {

    frameSize.width = screenSize.width;

    }

    frame.setTitle("java版打字练习软件");

    frame.setLocation((screenSize.width - frameSize.width) / 2,

    (screenSize.height - frameSize.height) / 2);

    frame.setVisible(true);

    }

    }

    class Frame1_jButton2_actionAdapter implements ActionListener {

    private Main adaptee;

    Frame1_jButton2_actionAdapter(Main adaptee) {

    this.adaptee = adaptee;

    }

    public void actionPerformed(ActionEvent e) {

    adaptee.jButton2_actionPerformed(e);

    }

    }

    class Frame1_jButton1_actionAdapter implements ActionListener {

    private Main adaptee;

    Frame1_jButton1_actionAdapter(Main adaptee) {

    this.adaptee = adaptee;

    }

    public void actionPerformed(ActionEvent e) {

    adaptee.jButton1_actionPerformed(e);

    }

    }

    /**

    * 下落的字符类

    *

    */

    class Bean {

    String parameter = null;

    JLabel show = null;

    public JLabel getShow() {

    return show;

    }

    public void setShow(JLabel show) {

    this.show = show;

    }

    public String getParameter() {

    return parameter;

    }

    public void setParameter(String parameter) {

    this.parameter = parameter;

    }

    }

    效果图

    5be6c64a2865602092d2bce222494c8e.png

    展开全文
  • Java学习案例练习

    2021-11-16 14:51:47
    ①编程统计用户输入任意一个正整数中每个数字出现次数的统计并打印。 如:123123 => 1出现2次,2出现2次,3出现2次 ...import java.util.Scanner; public class ArrayCountTest { publ...
  • /*** 输入5个学生成绩* 计算出每个成绩与最高分的差距* 根据差距分配等级** */import java.util.Scanner;public class ArrayTask {public static void main(String []args){// 创建Scanner对象Scanner scanner = new...
  • Java继承保姆级讲解链接: https://blog.csdn.net/qq_43436117/article/details/113825027. 1.继承的综合案例 1.1综合案例:群主发普通红包 群主发普通红包。某群有多名成员,群主给成员发普通红包。普通红包的规则:...
  • Java基础案例教程

    2021-05-17 19:44:08
    Java的基本语法 2.11 Java代码的基本格式 Java中的程序代码必须放在一个类中,类需要用class关键字定义,class前可以有一些修饰符。 修饰符 class 类名{ 程序代码 } 注意! Java程序代码可分为 结构定义语句 和 功能...
  • 案例1:水仙花 需求:求取所有的“水仙花数”,统计水仙花数个数,并将数字打印到控制台。 tips: ​ 1.水仙花数是一个三位数 ​ 2.水仙花数的个位,十位,百位的数字立方和等于原数 public static void main...
  • Java Web案例教程

    2021-02-12 14:38:41
    认识Java Web程序设计案例1 Java Web程序设计的基本概念任务1 万维网(WWW)与网页任务2 C/S与B/S架构程序任务3 Java Web应用程序组成与结构、学习内容案例2 Java Web程序的环境安装和配置案例3 Java Web项目的运行...
  • 案例一: 描述: 从键盘上输入一个整数,判断该数是否是素数。(1不是素数,素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数) 思路: 定义一个for循环和辅助变量i,并给i赋初始值2,...
  • 本文参考 嗨客网 Java 实战前言本篇文章给大家安利一些关于 Java 基础的练习题,每道题都附有答案链接,答案解题的每个步骤到运行结果都十分详细,十分适合小白拿来练习,也十分适合准备面试的各位复习下 Java 基础...
  • JAVA小白编程题练习 可能有很多刚入门的小白不知道自己如何能快速提升编程技巧与熟练度 其实大佬进阶之路只有一个~ 那就是疯狂码代码!!!实践出真知!!! 所以为了大家能够想练习的时候有素材,泡泡给大家整理了一些练习...
  • 文章目录1,上集回顾数组的格式:获取数组中的元素:...调用格式:案例1 - 调用的时候传递常量:案例2 - 调用的时候传递变量:形参和实参:案例:5,方法的第三种格式(有参有返回值)定义格式:调用格式:案例:注意点
  • 定义一个员工(Employee)类,自己分析出几个成员,然后给出成员变量,构造方法,getXxx()/setXxx()方法,以及一个显示所有成员信息的方法。 员工类Employee public class Employee { private String name;...
  • Java异常处理十个案例

    2021-03-16 03:31:01
    异常处理是Java开发中的一个重要部分。它是关乎每个应用的一个非功能性需求,是为了处理任何错误状况,比如资源不可访问,非法输入,空输入等等。Java提供了几个异常处理特性,以try,catch和 finally 关键字的形式...
  • 60个Java练手项目案例,看了让你茅塞顿开~

    千次阅读 多人点赞 2021-03-07 05:33:50
    给大家推荐一条由浅入深的JAVA学习路径,首先完成 Java基础、JDK、JDBC、正则表达式等基础实验,然后进阶到 J2SE 和 SSH 框架学习。最后再通过有趣的练手项目进行巩固。JAVA基础Java编程语言(新版)2. Java进阶之设计...
  • 三十个Java基础练习

    2021-03-01 06:07:53
    import java.util.Scanner; //判断一个数能否同时被3和5 整除 public class ZhengChu { public static void main(String[] args) { // TODO Auto-generated method stub int number; System.out.print("输入一个数...
  • 常用工具类练习1. 请根据控制台输入的特定日期格式拆分日期,如:请输入一个日期(格式如:**月**日****年),经过处理得到:****年**月**日importjava.util.Scanner;public classOne {public static voidmain(String...
  • Java语言与现实生活是紧密联系的,因此在Java语言中也有让代码重复执行的循环结构。...下面我们来讲讲for循环,然后再做一做相关的使用练习。一、for循环的基本格式:public static void main(String...
  • java流程控制练习案例java流程控制练习案例(一)1、判断某一年是否为闰年2、用switch语句根据消费金额计算折扣 java流程控制练习案例(一) 1、判断某一年是否为闰年 代码如下(示例): import java.util.Scanner...
  • java基础练习题(se)

    2021-02-26 08:54:26
    一、问世(欢迎)class HelloWord{...}}二、Java标识符与关键字练习题● 熟记标识符的命名规则和规范。● 分析以下单词哪些是合法的标识符,哪些不合法:1、myName,字,My_name,Points,$points,_sys_ta,OK,_23b...
  • java 数组实例练习

    2021-02-28 15:20:46
    路漫漫其修远兮,吾将上下而求索...import java.util.*;public class ArrayOptions {public static void main(String[] args) {int[] array = {2,5,-2,6,-3,8,0,-7,-9,4};Arrays.sort(array);printArray("数组排序结...
  • 1.首先打开新建项目,左边选择java模块,直接点击下一步 2直接下一步 3新建项目写入项目名称以及正确的项目位置 4点击src文件右键 5新建包,用于项目区分 6创建包后,右键点击创建java类 7输入类名。完成类的...
  • package Demo_Test;import java.util.ArrayList;import java.util.Collection;import java.util.Collections;/*** 斗地主综合案例* 1.准备牌* 2.洗牌* 3.发牌* 4.看牌*/public class DouDizhu {public static vo...
  • java循环语句案例

    2021-11-19 13:00:01
    java循环语句练习题1.计算1~100奇数和2.判断一个数是否是素数3.打印出:1 1 2 3 5 8 ... 的第18项4.打印出十项 1 1/2 2/3 3/5 5/8 ...5.计算今天是今年的第多少天6.模拟一个简单的用户登录系统7.打印三角形(直角在...
  • 练习Java面向对象编程的接口和类: 案例演示: 动物类:姓名、年龄、吃饭、睡觉 猫和狗 动物培训接口:跳高 代码实现 class MainTest { public static void main(String[] args) { JumpDog dog = new JumpDog();...
  • 四、略 五、 1、 import java.util.*; public class test { public static void main(String args[]){ boolean b[]=new boolean[10]; for(int i=0;i;i++){ if(i%2==0)b[i]=false; else b[i]=true; } for(int i=0;i;...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 33,592
精华内容 13,436
关键字:

java练习案例

java 订阅