8、String练习题
String练习
1、字符串反转,例如将"abc"变成"cba"
2、统计一个字符串里面另一个字符串出现的次数,例如统计"monkey"在"I am monkey1024.monkey like banana.little monkey is smart."中出现的次数
3、统计一个字符串中大写字母出现的次数
1.思路:字符串是由多个字符组成的,可以将字符串转换为字符(char)数组,然后倒序遍历数组即可
package com.monkey1024.string;
import java.util.Scanner; /**
* 字符串反转
*
*/
public class Exercise01 { public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String input = s.next();
//将输入的字符串转换为char类型数组
char[] charArray = input.toCharArray();
//遍历数组并倒着输出
for(int i=charArray.length-1; i>=0; i--){
System.out.print(charArray[i]);
}
}
}
2.思路:通过indexOf方法在大的字符串中查找小字符串的索引值,找到后将这个索引值和小字符串的长度相加,之后将大的字符串截取根据相加的结果截取子串,然后继续在剩下的字符串中查找小字符串的索引值,直到索引值返回-1为止
package com.monkey1024.string;
/**
* 统计一个字符串里面另一个字符串出现的次数
*
*/
public class Exercise02 { public static void main(String[] args) {
String src = "I am monkey1024.monkey like banana.little monkey is smart.";
String dest = "monkey";
//定义出现的次数
int count = 0; //定义索引值
int index = 0; while((index = src.indexOf(dest)) != -1){
count++;
//将src截取子串
src = src.substring(index + dest.length());
}
System.out.println("出现的次数是:" + count);
}
}
3.思路:每个大写字母都是一个字符char,而大写字母A~Z是有范围的,只要统计这个范围内的字符即可
package com.monkey1024.string;
public class Exercise03 {
public static void main(String[] args) {
String src = "monkEY";
//统计大写字母出现的次数
int count = 0;
//将字符串转换为字符数组
char[] c = src.toCharArray();
for(int i=0; i<c.length; i++){
//判断是否为大写字母
if(c[i] >= 'A' && c[i] <= 'Z'){
count++;
}
}
System.out.println("大写字母出现的次数:" + count);
}
}
8、String练习题的更多相关文章
- Java String练习题及答案
1. 编写程序将 “jdk” 全部变为大写,并输出到屏幕,截取子串”DK” 并输出到屏幕 /** * 编写程序将 “jdk” 全部变为大写,并输出到屏幕,截取子串”DK” 并输出到屏幕 */ publ ...
- java String练习题
package java07; /* 题目: 定义一个方法,把数组{1,2,3}按照指定格式拼接成一个字符串,格式参照如下:[word1#word2#word3] 思路: 1.首先准备一个int[]数 ...
- Redis 实战 —— 05. Redis 其他命令简介
发布与订阅 P52 Redis 实现了发布与订阅(publish/subscribe)模式,又称 pub/sub 模式(与设计模式中的观察者模式类似).订阅者负责订阅频道,发送者负责向频道发送二进制字 ...
- 【LeetCode练习题】Reverse Words in a String
Reverse Words in a String Given an input string, reverse the string word by word. For example,Given ...
- 【LeetCode练习题】Scramble String
Scramble String Given a string s1, we may represent it as a binary tree by partitioning it to two no ...
- Java String类练习题
题目:1. 给定一个字符串,判断该字符串中是否包含某个子串.如果包含,求出子串的所有出现位置.如:"abcbcbabcb34bcbd"中,"bcb"子串的出现位 ...
- (练习题)利用构造器函数实现三个小实例——不使用String()与Array()构造器和Math对象,不使用内建的方法的方法和属性。
1)在String()构造器不存在的情况下自定义一个myString()构造器函数.由于String()不存在,因此您在写构造器函数时不能使用任何属于内建String对象的方法和属性.并让你所创建的对 ...
- 设计一个字符串类String(C++练习题)
要求:设计一个字符串类String,可以求字符串长度,可以连接两个串(如,s1=“计算机”,s2=“软件”,s1与s2连接得到“计算机软件”),并且重载“=”运算符进行字符串赋值,编写主程序实现:s1 ...
- 尚硅谷JavaSEday18 String类练习题
1.重新编写strim方法,去掉字符串两端的空格 package www.shangguigu.java.exer; import org.junit.Test; /* 练习一:重写Strim方法,输 ...
随机推荐
- windows多线程(七) 事件event
前面说的互斥量Mutex与关键段CriticalSection都不能实现线程的同步,只能实现互斥,接下来我们用时间event就可以实现线程的同步了,事件也是一个内核对象. 一.相关函数说明 (一) 创 ...
- springmvc+mybatis 处理时间
项目结构: 一.数据库中time的字段为datetime1. 数据库设计如图 2. addNews.jsp <%@ page language="java" contentT ...
- C++模式学习------代理模式
Proxy代理模式 : 为其他对象提供一种代理以控制对这个对象的访问.代理类作为桥梁是请求方和执行方的中间者,将请求方和真正的执行方分割开来,也是两者之间调用的协调者.例如执行类也就是被代理类,可以在 ...
- python爬虫实战之bilibili弹幕生成云图
突然想到了这个题目,先开了题,看能不能一次搞定,#后记,花了两天时间搞定的,一直想用自己的方法爬,但是效果都不好 首先去分析一下bilibili的网站请求,但是弹幕的异步传输的包抓不到(或者隐藏的好, ...
- LINQ 学习之筛选条件
从list 里遍历出 id="DM" 且 code="0000" 的数据 var tes1= from u in list.where u.ID == & ...
- 【刷题】洛谷 P4234 最小差值生成树
题目描述 给定一个标号为从 \(1\) 到 \(n\) 的.有 \(m\) 条边的无向图,求边权最大值与最小值的差值最小的生成树. 输入输出格式 输入格式: 第一行两个数 \(n, m\) ,表示图的 ...
- BZOJ 3210: 花神的浇花集会
3210: 花神的浇花集会 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 577 Solved: 299[Submit][Status][Discus ...
- 【BZOJ2962】序列操作(线段树)
[BZOJ2962]序列操作(线段树) 题面 BZOJ 题解 设\(s[i]\)表示区间内选择\(i\)个数的乘积的和 考虑如何向上合并? \(s[k]=\sum_{i=0}^klson.s[i]*r ...
- 【转】64位Ubuntu 16.04搭建嵌入式交叉编译环境arm-linux-gcc过程图解
64位Ubuntu 16.04搭建嵌入式交叉编译环境arm-linux-gcc过程图解,开发裸机环境之前需要先搭建其开发环境,毕竟工欲善其事必先利其器嘛. 安装步骤 1.准备工具安装目录 下载 ar ...
- SHA1WithRSA签名 规范化标准签名
#region CerRsaSignature 根据私钥签名 /// <summary> /// 根据私钥串签名 /// </summary> /// <param na ...