当前位置: 首页 > news >正文

java基础练习DEMO

  • 模拟用户登陆的方式
/*- 模拟用户登录。- 定义用户类,属性为用户名和密码。- 使用集合存储多个用户对象。- 录入用户和密码,对比用户信息,匹配成功登录成功,否则登录失败。- 登录失败时,当用户名错误,提示没有该用户。- 登录失败时,当密码错误时,提示密码有误。- 代码实现,效果如图所示:*/import java.util.ArrayList;
import java.util.Scanner;public class Demo39String {public static void main(String[] args) {User us = new User();Scanner sc = new Scanner(System.in);System.out.println("请输入用户名:");us.setName(sc.nextLine());System.out.println("请输入密码:");us.setPsd(sc.nextLine());ArrayList<User> al = new ArrayList<User>();al.add(new User("康熙", "123"));al.add(new User("乾隆", "103"));al.add(new User("嘉靖", "143"));al.add(new User("顺治", "153"));int count=0;for (int i = 0; i < al.size(); i++) {if (al.get(i).getName().equals(us.getName())) {if (al.get(i).getPsd().equals(us.getPsd())) {System.out.println("登录成功");break;} else {System.out.println("密码错误");break;}} else {count++;}}if (count == al.size()) {System.out.println("登录名错误");}}
}
  • 验证扣扣号登陆方式
/*
最主要的是在验证是不是数字这里????????????
- 键盘录入QQ号码,验证格式的正确性。- 必须是5—12位数字。- 0不能开头。- 代码实现,效果如图所示:*/import java.util.Scanner;public class Demo34String {public static void main(String[] args) {
//        1.键盘录入一个qq号码,字符串类型Scanner sc = new Scanner(System.in);System.out.println("请输入一个QQ号:");String qq = sc.nextLine();
//        2.条用checkQQ(String qq)方法内实现验证boolean isOK = checkQQ(qq);
//        3.打印验证的结果System.out.println("这个QQ号码是否正确" + isOK);}private static boolean checkQQ(String qq) {
//        1.验证字符串的长度5-12位之间;if (qq.length() < 5 || qq.length() > 12) {return false;}
//       2.验证首位字符不能是字符0,只能是1-9if (qq.charAt(0) == '0') {return false;}
//        3.验证字符串的每个字符都必须是数字字符0-9之间的字符for (int i = 0; i < qq.length(); i++) {char ch = qq.charAt(i);//判断字符是否在0-9之间if (ch < '0' || ch > '9') {//说明QQ号码中含有非数字字符return false;}}//上述验证都通过了,就说明你的QQ号码是正确的return true;}
}
  • 用来进行筛选字母和数字的经典案例
/*
* 编写一个java编程,提示用户输入一串字符串,要求字符串必须讯在字母.
* 1.若不符合要求免责提示用户重新输入直至符合要求为止
* 2.若符合要求,则判断字符串中大写字母出现次数并打印
* */
import java.util.Scanner;
/*分析:
1.创建键盘录入对象
2.定义死循环  while(true)
3.接收键盘录入的内容,是一个字符串定义一个标记 false使用fori循环遍历这个字符串取出来每一个字符进行判断
4.判断:直接判断就行键盘录入的内容是不是字符串?是字符串就进入内层判断,包含多少大写字母;判断标记,为正确的话就进入输出大写字母的个数错误的话,就进入下一次循环.*/
public class Test01 {public static void main(String[] args) {//        创建键盘录入对象Scanner sc = new Scanner(System.in);
//        使用while循环进入死循环while (true) {System.out.println("请输入一个带字母的字符串:");
//            接收键盘录入String s = sc.nextLine();int count = 0;boolean flag = false;for (int i = 0; i < s.length(); i++) {char c = s.charAt(i);if (c >= 'a' && c < 'z' || c >= 'A' && c <= 'Z') {
//                    统计一下大写字母有多少个?if (c > 'A' && c <= 'z') {count++;}flag = true;}}if (flag == true) {System.out.println("输入的" + s + "中含有的大写字母的个数为" + count + "个");break;} else {System.out.println("输入错误,请输入一个带字母的字符串");}}}
}
  • 打印随机验证码
/*
随机验证码。- 随机生成十组六位字符组成的验证码。- 验证码由大小写字母、数字字符组成。
*/import java.util.Random;public class Demo02RandomDemo03 {public static void main(String[] args) {
//        1.使用数组创建一个字典,包含大小写字母、数字字符char[] arr = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9','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', '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'};//       2. 创建随机数对象Random r = new Random();//        3.定义一个可以进行10次的循环for (int i = 0; i < 10; i++) {
//             6. 定义一个空字符串,用来连接String str = "";
//            4.定义一个循环可以打印6个验证码for (int i1 = 0; i1 < 6; i1++) {
//                5.每次打印一个验证码,产生一个随机数int num = r.nextInt(arr.length);str = str + arr[num];}
//            7.每循环一次打印一次.System.out.println(str);}}
}
  • 三个值获取较大值和较小值的方法之三元表达式
public static int getMax(int a, int b, int c) {int max = a > b ? (a > c ? a : c) : (b > c ? b : c);return max;}public static int getMin(int a, int b, int c) {int min = a < b ? (a < c ? a : c) : (b < c ? b : c);return min;}
  • 猜数字游戏
import java.util.Random;
import java.util.Scanner;
//导入包
public class Cai_Shu_Zi {public static void main(String[] args) {//在显示屏上输出一句话让你输入数字:System.out.println("请输入你猜的数字:");//使用Scanner对象,并导入Scanner sc = new Scanner(System.in);//接收你键盘录入的数字把这个数字给numint num= sc.nextInt();//把这个值给一个方法caishuzi(num);}private static void caishuzi(int num) {//创建Random对象,并导入Random r = new Random();//系统产生一个随机数int number = r.nextInt(100) + 1;//System.out.println(number);//创建Scanner对象,Scanner sc = new Scanner(System.in);//死循环while(true) {//你猜的数比随机数大,你猜大了.if (num > number) {System.out.println("你猜大了,请重新猜一个:");//再次接收你键盘录入的数字,把这个数字给numnum = sc.nextInt();} else if (num < number) {System.out.println("猜小了,请重新猜一个:");//再次接收键盘录入的数字.num = sc.nextInt();} else {System.out.println("恭喜你猜对了!产生的随机数是:" + num);break;}}}
}
  • 打印99乘法表
public class chengfabiao99 {public static void main(String[] args) {for (int i = 1; i <= 9 ; i++) {for (int j = 1; j <=i ; j++) {System.out.print(i+"*"+j+"="+i*j+"\t");}System.out.println();}}
}
//总结:
//当打印倒三角时需要改变初始化值;让j=i
//当打印正三角时需要改变比较值.让j<=i
  • 求0~100的质数
public class Demo01Ffor {//求0到100之内的质数public static void main(String[] args) {//定义一个标志boolean f;//进入循环int i=0;int sum = 0;for( int x=2;x<=100;x++){//定义标志f = true;//进入内循环for(int j=2;j<x-1;j++){/* 用x值与j值依次模,如果x%j==0时,就会进入if语句中,f标记变成false,退出本次循环.*/if(x%j==0){f = false;break;}}//当标记为true时,就是得到了质数.if(f){i++;sum = sum+x;System.out.print(x);System.out.println("------------------");}}System.out.println(i);System.out.println(sum);}
}

相关文章:

  • zynq7020 ubuntu_base 跟文件系统
  • 深入解析Java Socket服务器实现:从基础到优雅停机
  • ICP 减少的是 不必要 的回表,而不是 所有 回表
  • 《Java 并发编程实践》阅读笔记(一):线程重要性
  • 空洞卷积(膨胀卷积/扩张卷积)本质理解
  • Java 本地缓存的实现:常见的四种方式
  • 逻辑过期怎么设计
  • PclSharp ——pcl的c#nuget包
  • 自己的账号
  • 细说STM32单片机FreeRTOS任务管理API函数vTaskList()的使用方法
  • 软件测试|App测试相关面试题(3)
  • 2025年第二期DAMA认证考试通知已发布!
  • kali下maven 的安装与配置
  • 自动化构建工具:makemakefile
  • 求简单交错序列前N项和
  • 【Linux我做主】探秘gcc/g++和动静态库
  • RestControllerAdvice 和 ControllerAdvice 两个注解的区别与联系
  • 二十、FTP云盘
  • Operator 开发入门系列(一):Hello World
  • 【Java学习笔记】标识符和保留字
  • 亚马逊拟为商品标注“关税成本”,特朗普致电贝索斯讨说法
  • 城市更新·简报│中央财政支持城市更新,倾斜超大特大城市
  • 聚焦各领域顶尖工匠,《上海工匠》第十季于五一播出
  • “铁血防守”制造8年最快丢球,恐惧中的阿森纳什么也做不了
  • 李铁案二审驳回上诉,维持一审有期徒刑20年的判决
  • 专访|200余起诉讼,特朗普上台100天,美国已进入宪政危机