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

实用类题目

1. 密码强度检测

  • 题目描述:生活中,为保证账户安全,密码需要有一定强度。编写一个方法,接收一个字符串作为密码,判断其是否符合以下强度要求:长度至少为 8 位,包含至少一个大写字母、一个小写字母和一个数字。
  • 测试数据
    • 输入:"Abc12345",输出:true
    • 输入:"abc123",输出:false
    • 输入:"ABCDEFGH",输出:false
import java.util.Scanner;public class ppwdTest {public static void main(String[] args) {Scanner input = new Scanner(System.in);do {System.out.println("输入密码:");String str = input.next();boolean upper = false;boolean lower = false;boolean num = false;boolean pwdLength = false;for (int i=0; i < str.length(); i++) {char strWord=str.charAt(i);if (Character.isUpperCase(strWord)) {upper=true;}if (Character.isDigit(strWord)) {num=true;}if (Character.isLowerCase(strWord)) {lower=true;}}if (str.length()>=8){pwdLength = true;}if (pwdLength == false){System.out.println("密码长度至少8位!");}if (upper == false){System.out.println("密码需包含大写字符!");}if (lower == false){System.out.println("密码需包含小写字符!");}if (num == false){System.out.println("密码需包含数字!");}if(upper == true && lower == true && num == true){System.out.println("密码符合条件!");break;}}while (true);}
}

 输出结果:

2. 地址信息提取

  • 题目描述:在填写收货地址时,地址格式通常为 “省份 - 城市 - 详细地址”。编写一个方法,接收完整地址字符串,分别返回省份、城市和详细地址信息。
  • 测试数据
    • 输入:"广东省 - 广州市 - 天河区某街道",输出:省份:"广东省",城市:"广州市",详细地址:"天河区某街道"
public class AddressTest {public static void main(String[] args) {String address = "广东省 - 广州市 - 天河区某街道";String[] str = address.split(" - ");if (str.length == 3) {String province = str[0];String city = str[1];String addressDetail = str[2];System.out.println("省份:" + province + ",城市:" + city + ",详细地址:" + addressDetail);} else {System.out.println("输入的地址格式不正确。");}}
}

 输出结果:

3. 文件名扩展名分离

  • 题目描述:在处理文件时,经常需要分离文件名和扩展名。编写一个方法,接收一个完整文件名(包含扩展名)的字符串,分别返回文件名和扩展名。
  • 测试数据
    • 输入:"example.txt",输出:文件名:"example",扩展名:"txt"
    • 输入:"document.pdf",输出:文件名:"document",扩展名:"pdf"
public class fileTest {public static void main(String[] args) {String file = "example.txt";int dotIndex = file.lastIndexOf('.');String fileName = file.substring(0, dotIndex);String extension = file.substring(dotIndex + 1);System.out.println("文件名:" + fileName + ",扩展名:" + extension);String file2 = "document.pdf";dotIndex = file2.lastIndexOf('.');fileName = file2.substring(0, dotIndex);extension = file2.substring(dotIndex + 1);System.out.println("文件名:" + fileName + ",扩展名:" + extension);}
}

输出结果:

4. 歌词分行处理

  • 题目描述:在音乐软件中,歌词一般按行显示。假设歌词以字符串形式存储,每行歌词之间用换行符 \n 分隔。编写一个方法,接收歌词字符串,返回每行歌词组成的字符串数组。
  • 测试数据
    • 输入:"我和我最后的倔强\n握紧双手绝对不放",输出:["我和我最后的倔强", "握紧双手绝对不放"]
public class MusicTest {public static void main(String[] args) {String music = "我和我最后的倔强\n握紧双手绝对不放";String[] lines = music.split("\n");for (int i = 0; i < lines.length; i++) {System.out.print( lines[i]);if (i < lines.length - 1) {System.out.print(", ");}}}
}

 输出结果:

5. 商品价格格式化

  • 题目描述:在电商平台展示商品价格时,通常会将价格格式化为带有千位分隔符且保留两位小数的形式。编写一个方法,接收一个表示价格的字符串(如 "1234.5"),返回格式化后的价格字符串(如 "1,234.50")。
  • 测试数据
    • 输入:"1234.5",输出:"1,234.50"
    • 输入:"1000",输出:"1,000.00"
import java.util.Scanner;public class PriceTest {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.print("请输入价格:");String price = input.next();int dotIndex = price.lastIndexOf('.');String priceHigh;String priceLow;if (price.contains(".")){priceHigh = price.substring(0, dotIndex);priceLow = price.substring(dotIndex + 1);}else {priceHigh = price;priceLow = "00";}StringBuffer priceSbf = new StringBuffer(priceHigh);for (int i = priceHigh.length() - 3; i > 0; i-=3) {priceSbf.insert(i, ",");}System.out.println("价格为:"+priceSbf.toString()+"."+priceLow);}
}

 输出结果:


http://www.mrgr.cn/news/98592.html

相关文章:

  • 【软件工程大系】净室软件工程
  • SageAttention2
  • 基于AD9767高速DAC的DDS信号发生器
  • C++学习之工厂模式-套接字通信
  • 【本地图床搭建】宝塔+Docker+MinIO+PicGo+cpolar:打造本地化“黑科技”图床方案
  • IDEA202403 常用设置【持续更新】
  • LWIP学习笔记
  • Android studio打包uniapp插件
  • 【NLP 59、大模型应用 —— 字节对编码 bpe 算法】
  • 使用 Vitis Model Composer 生成 FPGA IP 核
  • 【QT】 QT定时器的使用
  • 常见的 14 个 HTTP 状态码详解
  • 如何在 Windows 安卓子系统 (WSA) 上安装小红书应用
  • rce漏洞学习
  • Ubuntu2404装机指南
  • 【Docker-13】Docker Container容器
  • 虚幻基础:碰撞帧运算
  • UWB定位技术面临的主要挑战
  • go中我遇到的问题总结
  • Redis 分布式锁+秒杀异步优化