【Java】重生之String类再爱我一次---练习题(012)
目录
♦️练习一:用户登录
♦️练习二:遍历字符串
♦️练习三:统计字符次数数
♦️练习四:拼接字符串
♦️练习五:反转字符串
♦️练习六:金额转换
♦️练习七:手机号屏蔽
♦️练习一:用户登录
已知正确的用户名和密码,请用程序实现模拟用户登录
总共给三次机会,登录之后,给出相应的提示
🎏分析:
- 要点一:正确的用户名和密码
- 要点二:总共三次登陆机会
- 要点三:给出相应的提示
import java.util.Scanner;
public class Main {public static void main(String[] args) {//1.创建用户名和密码两个变量String rightUsername = "zhangsan";String rightPassword = "123456";//2.开辟空间,键盘录入输入的用户名和密码//注意:需登录三次,需用循环,又知道循环次数则用for循环for (int i = 0; i < 3; i++) {Scanner sc = new Scanner(System.in);System.out.println("请输入用户名");String Username = sc.nextLine();System.out.println("请输入密码");String Password = sc.nextLine();//3.判断登录是否成功if (rightUsername.equals(Username) && rightPassword.equals(Password)) {System.out.println("用户登陆成功");break;} else {System.out.println("用户名或密码输入错误,请重新登录");}}}
}
注意:在用户登录成功后需结束循环,加break,而登录错误不用
♦️练习二:遍历字符串
需求:键盘录入一个字符串,使用程序实现在控制台遍历该字符串
import java.util.Scanner;
public class Main {public static void main(String[] args) {// 创建Scanner对象以获取用户输入Scanner scanner = new Scanner(System.in);// 提示用户输入字符串System.out.print("请输入一个字符串:");String str= scanner.nextLine();// 遍历并打印字符串中的每个字符for (int i = 0; i < str.length(); i++) {char chs = str.charAt(i);System.out.println(chs);}}
}
♦️练习三:统计字符次数数
键盘录入一个字符串,统计该字符串中大写字母字符,小写字母字符,数字字符出现的次数
import java.util.Scanner; public class CharacterCount { public static void main(String[] args) { // 创建Scanner对象以获取用户输入 Scanner scanner = new Scanner(System.in); // 提示用户输入字符串 System.out.print("请输入一个字符串:"); String inputString = scanner.nextLine(); // 初始化计数器 int uppercaseCount = 0; int lowercaseCount = 0; int digitCount = 0; // 遍历字符串并统计字符类型 for (int i = 0; i < inputString.length(); i++) { char c = inputString.charAt(i); if (c>='A'&&c<='Z') { uppercaseCount++; // 大写字母 } else if (c>='a'&&c<='z') { lowercaseCount++; // 小写字母 } else if (c>='0'&&c<='9')) { digitCount++; // 数字 } } // 输出统计结果 System.out.println("大写字母出现次数: " + uppercaseCount); System.out.println("小写字母出现次数: " + lowercaseCount); System.out.println("数字出现次数: " + digitCount); // 关闭Scanner scanner.close(); }
}
注:用ASCII码值来计算字符出现的次数
♦️练习四:拼接字符串
定义一个方法,把 int数组中的数据按照指定的格式拼接成一个字符串返调用该方法,并在控制台输出结果。例如:
数组为 int[] arr ={1,2,3};
执行方法后的输出结果为:[1,2,3]
🎏分析:
- 要点一:定义一个方法并返回值
- 要点二:注意结果的格式
import java.util.Scanner;
public class Main {public static void main(String[] args) {// 定义整数数组int[] arr = {1, 2, 3};// 调用拼接方法并打印结果String chs= arrToString(arr);System.out.println(chs);}// 方法:将int数组拼接成字符串public static String arrToString(int[] arr){ //判断数组是否为空或数组长度是否为0if(arr.length==0||arr==null){return " ";}String result="[";for (int i = 0; i < arr.length; i++){// 如果不是最后一项,添加逗号if (i < arr.length - 1){result=result+arr[i]+(","); // 使用中文逗号}else{result=result+arr[i];}}result=result+"]";return result;}
}
♦️练习五:反转字符串
定义一个方法,实现字符串反转。键盘录入一个字符串,调用该方法后,在控制台输出结果例如,键盘录入 abc,输出结果 cba
import java.util.Scanner;
public class Main {public static void main(String[] args) {String str = "abc";String chs=reverse(str);System.out.println(chs);}public static String reverse(String str){String result="";for (int i = str.length()-1; i>=0; i--){char c=str.charAt(i);//将字符串某索引的值赋值于cresult=result+c;}return result;}}
♦️练习六:金额转换
🎏分析:
- 步骤一:定义一个方法可将数字转换为大写
- 步骤二:得到大写数组后在前面补0,补够7位
- 步骤三:插入单位
import java.util.Scanner;
public class Main {public static void main(String[] args) {//1.键盘录入一个金额Scanner sc=new Scanner(System.in);System.out.println("请输入一个金额");int money;//判断输入的金额是否合理//金额合理while(true) {money=sc.nextInt();if (money >= 0 && money <= 9999999) {break;//在循环中才能运用break}//金额不合理else {System.out.println("金额无效");}}//定义一个变量表示前的大写String moneyStr="";//2.得到money里面的每一个数字while(true){//从右往左获取数据,因为右侧时数据的各位int ge=money%10;String capitalNumber=getCapitalNumber(ge);//将得到的大写数字拼接起来moneyStr=capitalNumber+moneyStr;//将MoneyStr和capitalNumber调换位置,防止打印出来是倒着的money/=10;//将money移位,则下一次money%10得到的就是数据的十位if(money==0){break;}}System.out.println(moneyStr);//3.在前面补零,补够7位int count=7-moneyStr.length();for (int i = 0; i < count; i++){moneyStr="零"+moneyStr;}System.out.println(moneyStr);//4.插入单位//定义一个数组表示单位String[] arr={"佰","拾","万","仟","佰","拾","元"};//遍历数组moneyStr,依次得到数组中元素//然后将单位插入进去for (int i = 0; i < moneyStr.length(); i++){char c=moneyStr.charAt(i);System.out.print(c);//注意此处打印不需要换行System.out.print(arr[i]);}}//定义一个方法,将数字变为大写public static String getCapitalNumber (int number){//定义数组,让数字跟大写中文产生一个对应关系String[] arr={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};//返回结果return arr[number];}
}
♦️练习七:手机号屏蔽
🎏方法:
- String substring(int beginIndex,int endIndex)
- 注意点:包头不包尾,包左不包右
- String substring(intbedinIndex) 截取到末尾
import java.util.Scanner;
public class Main {public static void main(String[] args) {//1.获取一个手机号String number="18100000000";//2.录取手机号前面几位String start=number.substring(0,3);//3.录取手机号后面几位String end=number.substring(7);//4.拼接String result=start+"****"+end;System.out.println(result);}
}
相关文章:

【Java】重生之String类再爱我一次---练习题(012)
目录 ♦️练习一:用户登录 ♦️练习二:遍历字符串 ♦️练习三:统计字符次数数 ♦️练习四:拼接字符串 ♦️练习五:反转字符串 ♦️练习六:金额转换 ♦️练习七:手机号屏蔽 ♦️练习一&am…...

NSSCTF-GDOUCTF 2023新生赛
[GDOUCTF 2023]hate eat snake 考察:js代码审计 打开题目,发现需要坚持60秒,那么简单的一个思路就是修改得分的变量>60即可 办法1:修改变量 右键查看源代码,之后发现有一个snake.js的文件,ctrlf搜索i…...

论文解析——Character Region Awareness for Text Detection,字符级文本检测CRAFT算法
这篇论文来自CVPR2019,paper地址:Character Region Awareness for Text Detection。 代码:CRAFT-pytorch。 这篇论文主要解决之前的文本检测是基于word-level的检测框,不能识别任意形状的文本的问题。与之前的方法不同࿰…...

基于飞腾平台的Kafka移植与安装
【写在前面】 飞腾开发者平台是基于飞腾自身强大的技术基础和开放能力,聚合行业内优秀资源而打造的。该平台覆盖了操作系统、算法、数据库、安全、平台工具、虚拟化、存储、网络、固件等多个前沿技术领域,包含了应用使能套件、软件仓库、软件支持、软件适…...

【Python数据结构与算法】递归----算24
题目:算24 描述 给出4个小于10个正整数,你可以使用加减乘除4种运算以及括号把这4个数连接起来得到一个表达式。现在的问题是,是否存在一种方式使得得到的表达式的结果等于24。 这里加减乘除以及括号的运算结果和运算的优先级跟我们平常的定…...

TOSHIBA东芝代理商--芯智雲城,提供订货、报价、选型等服务!
关于东芝 东芝创立于1875年7月,是日本大型半导体制造商,全球知名的综合机电制造商和解决方案提供者,世界大型综合电子电器企业集团。东芝集团原名东京芝浦电气株式会社,在1939年东京电器与芝浦制作所正式合并成为现在的东芝&…...

sdwan
分支互联网络解决方案 - 华为企业业务 分支互联网络解决方案 随着5G、AI、物联网等新兴技术与云紧密结合,企业业务智能化和云化加速。 企业分支WAN流量激增,传统以MPLS专线为主的广域互联网络难以支撑业务发展。SD-WAN成为应对云时代的必然选择。 SD…...
Linux: network: 建立socket以及设置nonblock/opt所需的时间
最近在扩大socket数量的时候发现程序在完成所有的socket创建设置的时间不短。单线程下。 创建socket的步骤是,(调用glibc/system call的接口): socket bind fcntl (sock, F_SETFL, flags); setsockopt 通过测试发现这几个步骤前后…...
git使用及代码规范
参考链接 git flow 简介代码审核的典型问题gitlab工作流...

职业教育大数据实验实训室建设应用案例
大数据作为一种重要的信息技术,对各行各业产生了深远的影响。职业教育作为培养应用型人才的摇篮,建设大数据实验实训室,对于提高学生的数据分析能力和解决实际问题的能力具有重要意义。唯众作为一家专注于教育技术领域的企业,凭借…...
【Academy】反序列化漏洞Insecure deserialization
反序列化漏洞Insecure deserialization 什么是序列化?序列化与反序列化什么是不安全的反序列化?不安全的反序列化漏洞是如何产生的?不安全的反序列化有什么影响?识别不安全的反序列化漏洞PHP序列化格式Java序列化格式 利用不安全的…...

【轨物推荐】康波、世界体系与创新范式:中国如何引爆新一轮产业革命
原创 邵宇、陈达飞 新财富 2019年12月31日 22:13 中美关系近两年备受关注,在诸多方面各方都已经形成了共识,但竞争博弈的结局富有争议性。当靠事物太近的时候,反而很难看清楚其面貌,使用康德拉季耶夫周期(简称“康波”…...

[HCTF 2018]admin1
打开题目 尝试登陆 admin,123,直接试出来了 有投机取巧的成分,到github查看源码,也能找到用户名密码...

【Qwen-Audio部署实战】Qwen-Audio-Chat模型之对话机器人部署测试
系列篇章💥 No.文章1【Qwen部署实战】探索Qwen-7B-Chat:阿里云大型语言模型的对话实践2【Qwen2部署实战】Qwen2初体验:用Transformers打造智能聊天机器人3【Qwen2部署实战】探索Qwen2-7B:通过FastApi框架实现API的部署与调用4【Q…...

第一百八十五节 Java XML教程 - Java DOM简介
Java XML教程 - Java DOM简介 DOM是标准的树结构,其中每个节点包含来自XML结构的一个组件。 XML文档中两种最常见的节点类型是元素节点和文本节点。 使用Java DOM API,我们可以创建节点,删除节点,更改其内容,并遍历节…...

一款功能强大且免费的图片查看和管理工具
XnView MP是一款功能强大且免费的图片查看和管理工具,支持多种平台(Windows、Mac和Linux),并基于相同的源代码实现统一的用户界面和体验。它不仅能够查看各种图片格式,还提供了丰富的编辑和管理功能。 图片查看与浏览…...
动手学强化学习 第 11 章 TRPO 算法(TRPOContinuous) 训练代码
基于 Hands-on-RL/第11章-TRPO算法.ipynb at main boyu-ai/Hands-on-RL GitHub 理论 TRPO 算法 修改了警告和报错 运行环境 Debian GNU/Linux 12 Python 3.9.19 torch 2.0.1 gym 0.26.2 运行代码 TRPOContinuous.py #!/usr/bin/env pythonimport torch import numpy a…...

数量关系模块
三年后指的不是现在 选A注意单位 注意单位换算 A 正方形减去扇形 256-X5y 那么小李拿的一定是末尾是1或者是6,所以小李拿的是26,那么y46,那么小王或者小周拿的是92,所以选择三个数之和等于92的,所以选择D 分数 百分数 …...
滑模面、趋近律设计过程详解(滑模控制)
目录 1. 确定系统的状态变量和目标2. 定义滑模面3. 选择滑模面的参数4. 设计控制律5. 验证滑模面设计6. 总结 设计滑模面(Sliding Surface)是滑模控制(Sliding Mode Control,SMC)中的关键步骤。滑模控制是一种鲁棒控制…...

SQL Server 端口配置
目录 默认端口 更改端口 示例:更改 TCP 端口 示例:验证端口设置 远程连接测试 示例:使用 telnet 测试连接 配置防火墙 示例:Windows 防火墙设置 远程连接测试 示例:使用 telnet 测试连接 默认端口 TCP/IP: …...

智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件
在选煤厂、化工厂、钢铁厂等过程生产型企业,其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进,需提前预防假检、错检、漏检,推动智慧生产运维系统数据的流动和现场赋能应用。同时,…...

如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...

Spring数据访问模块设计
前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...

优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...

python执行测试用例,allure报乱码且未成功生成报告
allure执行测试用例时显示乱码:‘allure’ �����ڲ����ⲿ���Ҳ���ǿ�&am…...

【Linux系统】Linux环境变量:系统配置的隐形指挥官
。# Linux系列 文章目录 前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变量的生命周期 四、环境变量的组织方式五、C语言对环境变量的操作5.1 设置环境变量:setenv5.2 删除环境变量:unsetenv5.3 遍历所有环境…...

淘宝扭蛋机小程序系统开发:打造互动性强的购物平台
淘宝扭蛋机小程序系统的开发,旨在打造一个互动性强的购物平台,让用户在购物的同时,能够享受到更多的乐趣和惊喜。 淘宝扭蛋机小程序系统拥有丰富的互动功能。用户可以通过虚拟摇杆操作扭蛋机,实现旋转、抽拉等动作,增…...

Linux部署私有文件管理系统MinIO
最近需要用到一个文件管理服务,但是又不想花钱,所以就想着自己搭建一个,刚好我们用的一个开源框架已经集成了MinIO,所以就选了这个 我这边对文件服务性能要求不是太高,单机版就可以 安装非常简单,几个命令就…...