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

【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)

目录 ♦️练习一&#xff1a;用户登录 ♦️练习二&#xff1a;遍历字符串 ♦️练习三&#xff1a;统计字符次数数 ♦️练习四&#xff1a;拼接字符串 ♦️练习五&#xff1a;反转字符串 ♦️练习六&#xff1a;金额转换 ♦️练习七&#xff1a;手机号屏蔽 ♦️练习一&am…...

NSSCTF-GDOUCTF 2023新生赛

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

论文解析——Character Region Awareness for Text Detection,字符级文本检测CRAFT算法

这篇论文来自CVPR2019&#xff0c;paper地址&#xff1a;Character Region Awareness for Text Detection。 代码&#xff1a;CRAFT-pytorch。 这篇论文主要解决之前的文本检测是基于word-level的检测框&#xff0c;不能识别任意形状的文本的问题。与之前的方法不同&#xff0…...

基于飞腾平台的Kafka移植与安装

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

【Python数据结构与算法】递归----算24

题目&#xff1a;算24 描述 给出4个小于10个正整数&#xff0c;你可以使用加减乘除4种运算以及括号把这4个数连接起来得到一个表达式。现在的问题是&#xff0c;是否存在一种方式使得得到的表达式的结果等于24。 这里加减乘除以及括号的运算结果和运算的优先级跟我们平常的定…...

TOSHIBA东芝代理商--芯智雲城,提供订货、报价、选型等服务!

关于东芝 东芝创立于1875年7月&#xff0c;是日本大型半导体制造商&#xff0c;全球知名的综合机电制造商和解决方案提供者&#xff0c;世界大型综合电子电器企业集团。东芝集团原名东京芝浦电气株式会社&#xff0c;在1939年东京电器与芝浦制作所正式合并成为现在的东芝&…...

sdwan

分支互联网络解决方案 - 华为企业业务 分支互联网络解决方案 随着5G、AI、物联网等新兴技术与云紧密结合&#xff0c;企业业务智能化和云化加速。 企业分支WAN流量激增&#xff0c;传统以MPLS专线为主的广域互联网络难以支撑业务发展。SD-WAN成为应对云时代的必然选择。 SD…...

Linux: network: 建立socket以及设置nonblock/opt所需的时间

最近在扩大socket数量的时候发现程序在完成所有的socket创建设置的时间不短。单线程下。 创建socket的步骤是&#xff0c;&#xff08;调用glibc/system call的接口&#xff09;&#xff1a; socket bind fcntl (sock, F_SETFL, flags); setsockopt 通过测试发现这几个步骤前后…...

git使用及代码规范

参考链接 git flow 简介代码审核的典型问题gitlab工作流...

职业教育大数据实验实训室建设应用案例

大数据作为一种重要的信息技术&#xff0c;对各行各业产生了深远的影响。职业教育作为培养应用型人才的摇篮&#xff0c;建设大数据实验实训室&#xff0c;对于提高学生的数据分析能力和解决实际问题的能力具有重要意义。唯众作为一家专注于教育技术领域的企业&#xff0c;凭借…...

【Academy】反序列化漏洞Insecure deserialization

反序列化漏洞Insecure deserialization 什么是序列化&#xff1f;序列化与反序列化什么是不安全的反序列化&#xff1f;不安全的反序列化漏洞是如何产生的&#xff1f;不安全的反序列化有什么影响&#xff1f;识别不安全的反序列化漏洞PHP序列化格式Java序列化格式 利用不安全的…...

【轨物推荐】康波、世界体系与创新范式:中国如何引爆新一轮产业革命

原创 邵宇、陈达飞 新财富 2019年12月31日 22:13 中美关系近两年备受关注&#xff0c;在诸多方面各方都已经形成了共识&#xff0c;但竞争博弈的结局富有争议性。当靠事物太近的时候&#xff0c;反而很难看清楚其面貌&#xff0c;使用康德拉季耶夫周期&#xff08;简称“康波”…...

[HCTF 2018]admin1

打开题目 尝试登陆 admin&#xff0c;123&#xff0c;直接试出来了 有投机取巧的成分&#xff0c;到github查看源码&#xff0c;也能找到用户名密码...

【Qwen-Audio部署实战】Qwen-Audio-Chat模型之对话机器人部署测试

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

第一百八十五节 Java XML教程 - Java DOM简介

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

一款功能强大且免费的图片查看和管理工具

XnView MP是一款功能强大且免费的图片查看和管理工具&#xff0c;支持多种平台&#xff08;Windows、Mac和Linux&#xff09;&#xff0c;并基于相同的源代码实现统一的用户界面和体验。它不仅能够查看各种图片格式&#xff0c;还提供了丰富的编辑和管理功能。 图片查看与浏览…...

动手学强化学习 第 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&#xff0c;所以小李拿的是26&#xff0c;那么y46&#xff0c;那么小王或者小周拿的是92&#xff0c;所以选择三个数之和等于92的&#xff0c;所以选择D 分数 百分数 …...

滑模面、趋近律设计过程详解(滑模控制)

目录 1. 确定系统的状态变量和目标2. 定义滑模面3. 选择滑模面的参数4. 设计控制律5. 验证滑模面设计6. 总结 设计滑模面&#xff08;Sliding Surface&#xff09;是滑模控制&#xff08;Sliding Mode Control&#xff0c;SMC&#xff09;中的关键步骤。滑模控制是一种鲁棒控制…...

SQL Server 端口配置

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

智慧医疗能源事业线深度画像分析(上)

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

安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件

在选煤厂、化工厂、钢铁厂等过程生产型企业&#xff0c;其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进&#xff0c;需提前预防假检、错检、漏检&#xff0c;推动智慧生产运维系统数据的流动和现场赋能应用。同时&#xff0c;…...

如何将联系人从 iPhone 转移到 Android

从 iPhone 换到 Android 手机时&#xff0c;你可能需要保留重要的数据&#xff0c;例如通讯录。好在&#xff0c;将通讯录从 iPhone 转移到 Android 手机非常简单&#xff0c;你可以从本文中学习 6 种可靠的方法&#xff0c;确保随时保持连接&#xff0c;不错过任何信息。 第 1…...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

Spring数据访问模块设计

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

优选算法第十二讲:队列 + 宽搜 优先级队列

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

python执行测试用例,allure报乱码且未成功生成报告

allure执行测试用例时显示乱码&#xff1a;‘allure’ &#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;ڲ&#xfffd;&#xfffd;&#xfffd;&#xfffd;ⲿ&#xfffd;&#xfffd;&#xfffd;Ҳ&#xfffd;&#xfffd;&#xfffd;ǿ&#xfffd;&am…...

【Linux系统】Linux环境变量:系统配置的隐形指挥官

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

淘宝扭蛋机小程序系统开发:打造互动性强的购物平台

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

Linux部署私有文件管理系统MinIO

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