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方法,输 ...
随机推荐
- 半夜思考,为什么 String 具有不变性
学习 Java 的数据类型时,特殊关照了 String 类型,具有不变性. 当时没有深入思考为什么 String 有不变性.而且我只碰到了 String 才有不变性.Java这样设计的缘由何在. 突然 ...
- Java:JUnit4使用详解
对于Junit的总是一知半解不太懂,现在认真梳理一下: 此次针对的是Junit4版本,注解也是在Junit4版本才有的,之前的版本并无注解功能.而注解开发基本上被认为是一种优秀的设计,所以我们写单元测 ...
- [BZOJ2244][SDOI2011]拦截导弹 CDQ分治
2244: [SDOI2011]拦截导弹 Time Limit: 30 Sec Memory Limit: 512 MB Special Judge Description 某国为了防御敌国的导弹 ...
- 【HDU4336】Card Collector(Min-Max容斥)
[HDU4336]Card Collector(Min-Max容斥) 题面 Vjudge 题解 原来似乎写过一种状压的做法,然后空间复杂度很不优秀. 今天来补一种神奇的方法. 给定集合\(S\),设\ ...
- Android Studio怎么文件添加到收藏和打开收藏夹
http://jingyan.baidu.com/article/1709ad809e608b4634c4f0b9.html 在使用Android studio编写的代码的过程中,有时会碰到有一些文件 ...
- bzoj 3816&&uoj #41. [清华集训2014]矩阵变换
稳定婚姻问题: 有n个男生,n个女生,所有女生在每个男生眼里有个排名,反之一样. 将男生和女生两两配对,保证不会出现婚姻不稳定的问题. 即A-1,B-2 而A更喜欢2,2更喜欢A. 算法流程: 每次男 ...
- 把矩阵分成n*m个块,从任意一个块出发,问是否可以一笔画遍历矩阵中所有的块
- print显示特定的数据格式
原文网址 1.查看数据print variable 查看变量print *array@len 查看数组(array是数组指针,len是需要数据长度)可以通过添加参数来设置输 ...
- 深入了解volatile
volatile关键字经常在并发编程中使用,其特性是保证可见性以及有序性,但是关于volatile的使用仍然要小心,这需要明白volatile关键字的特性及实现的原理,这也是本篇文章的主要内容 一.J ...
- Lvs+Keepalived实现MySQL高可用
LVS+Keepalived+MySQL高可用配置 本文所有配置前提是已实现MySQL双主备份(MySQL双主) 安装前的准备: VIP:192.168.0.201 Keepalived: Keepa ...