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

【蓝桥杯-筑基篇】常用API 运用(1)

🍓系列专栏:蓝桥杯

🍉个人主页:个人主页

目录

🍍1.输入身份证,判断性别🍍

🍍2.输入英语句子,统计单词个数🍍

🥝3.加密解密🥝

🌎4.相邻重复子串🌎


🍍1.输入身份证,判断性别🍍

分析:判断性别,只需要判断 倒数第2的奇偶就行

🍭方法1:String.charAt(  )

	    public static void main(String[] args) {Scanner scanner=new Scanner(System.in);String idCard=scanner.next();char sex=idCard.charAt(16);if(sex=='1'||sex=='3'||sex=='5'||sex=='7'||sex=='9') {System.out.println("男孩");}else System.out.println("女孩");}

 需要注意:String.charAt(  ) 是得到的是char类型,进行判断时 需要对数字打单引号。

 🍭方法2:char-'0'  可以变成整型

	    public static void main(String[] args) {Scanner scanner=new Scanner(System.in);String idCard=scanner.next();int sex=idCard.charAt(16)-'0';if(sex==1||sex==3||sex==5||sex==7||sex==9) {System.out.println("男孩");}else System.out.println("女孩");}

🍭方法3:

public String substring(int beginIndex, int endIndex)

第一个参数int为开始的索引,对应String数字中的开始位置,

第二个参数是截止的索引位置,对应String中的结束位置

Integer.valueOf()    :

Integer. valueOf()可以将基本类型int转换为包装类型Integer,或者将String转换成Integer,String如果为Null或“”都会报错。

int sex=Integer.valueOf(idCard.substring(16, 17));

 🍭方法4:

1、 indexOf(String str):

返回指定字符str在字符串中(方法调用者)第一次出现处的起始索引,如果此字符串中没有这样的字符,则返回 -1。


2、indexOf(String str, int index):

返回从 index 位置开始查找指定字符str在字符串中第一次出现处的起始索引,如果此字符串中没有这样的字符,则返回 -1

	    	String sex=idCard.substring(16, 17);System.out.println("13579".indexOf(sex)==-1?"女孩":"男孩");

 🍭方法5:String.contains(String str)

该方法是判断字符串中是否有子字符串。如果有则返回true,如果没有则返回false。

	    	String sex=idCard.substring(16, 17);System.out.println("13579".contains(sex)?"男孩":"女孩");


🍍2.输入英语句子,统计单词个数🍍

输入一串英语句子,统计单词的个数。

输入:good good study day day up

输出:6

分析:因为句子中间有空格,可以用  Sting.split(" ")  去除空格

	    public static void main(String[] args) {Scanner scanner=new Scanner(System.in);String words=scanner.nextLine();String arr[]=words.split(" ");// System.out.println(Arrays.toString(arr));System.out.println(arr.length);}

 当输入的英语句子中,每个单词之间有多个空格时,就会出现以下情况:

可以用   Sting.split(" +")  来实现去除多个空格:

 

🥝3.加密解密🥝

题目: a-z进行加密,把每个字符统一 +3 得到密文,请根据密文求出原来的明文(空格和标点符
号请忽略,只考虑小写) 

明文:abcdgh adoaj qdjiak

密文:defgjk dgrdm tgmldn

	    public static void main(String[] args) {String	ming="abcdefghijklmnopqrstuvwxyz";String	miwe="defghijklmnopqrstuvwxyzabc";Scanner scanner=new Scanner(System.in);String	str= scanner.nextLine().toLowerCase();int number;for (int i = 0; i < str.length(); i++) {char x=str.charAt(i);if(x>='a'&& x<='z') {number=ming.indexOf(x);System.out.print(miwe.substring(number,number+1));}else System.out.print(x);}}

🌎4.相邻重复子串🌎

题目描述:

如果一个字符串包含两个相邻的重复子串,则称它是“容易的串”,其他串称为“困难的串”。

例如:abcd 是  “困难的串”,abcabc 是“容易的串”, a  是  “困难的串”,cabacab 是  “困难的串”

输入:cabacab   输出:false

输入:abcabcde   输出:true

代码:

public class A {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);String str=scanner.nextLine();System.out.println(isEasy(str));}private static boolean isEasy(String str) {for (int len = 2; len <= str.length(); len=len+2) {for (int i = 0; i <= str.length()-len; i++) {String sub=str.substring(i,len+i);String left=sub.substring(0,len/2);String right=sub.substring(len/2,len);if(left.equals(right)) {return true;}}}return false;}}


 

http://www.lryc.cn/news/39657.html

相关文章:

  • 想要成为高级网络工程师,只需要具备这几点
  • c++ 每日十问3-处理数据
  • 【MySQL】实验一 数据定义
  • 17.电话号码的字母组合(深度递归遍历解决经典老题)
  • Python 基础教程【1】:Python介绍、变量和数据类型、输入输出、运算符
  • 【RPC】Apache Thrift系列详解 - 概述与入门
  • class03:MVVM模型与响应式原理
  • [Spring学习]08 @Resource和@Autowired注解的区别
  • 前端开发神器VS Code安装教程
  • 【Hive进阶】-- Hive SQL、Spark SQL和 Hive on Spark SQL
  • 搭建自己的直播流媒体服务器SRS,以及SRS+OBS直播推拉流使用及配置
  • Node.js-----使用express写接口
  • 【Linux修炼】16.共享内存
  • JAVA进阶 —— Stream流
  • Linux基础命令大全(上)
  • 嵌入式 串口通信
  • C语言函数调用栈
  • 【高阶数据结构】红黑树
  • 网络协议分析期末复习(二)
  • 【C++】STL简介 及 string的使用
  • MySQL事务详解
  • ChatGPT背后的技术和多模态异构数据处理的未来展望——我与一位资深工程师的走心探讨
  • iOS-砸壳篇(两种砸壳方式)
  • linux 基础
  • Java:SpringBoot给Controller添加统一路由前缀
  • Java 基于 JAVE 库 实现 视频转音频的批量转换
  • Spring容器——基于XML注入
  • 设计模式(二十一)----行为型模式之状态模式
  • 一分钟理解 AP(Affinity Propagation) 亲和⼒传播算法
  • 使用mybatis的映射文件操作存储过程