尚硅谷JavaSEday18 String类练习题

1.重新编写strim方法,去掉字符串两端的空格

package www.shangguigu.java.exer;
import org.junit.Test;

/*
 练习一:重写Strim方法,输入一个字符串,去掉两端的空格
 */
public class StringDemo {
	@Test
	// 测试1:
	public void test1(){
		String str = " wangqin wo aini!     ";
		//String str = "   "; //只有空格的字符串时,理论上是不打印,但是会出现空指针异常,加上
		String newStr = StringDemo.MyStrim(str);
		System.out.println(newStr);
	}

	//练习一:
	public static String MyStrim(String str){
		int start = 0;
		int end = str.length()-1;
		while(start<=end && str.charAt(start)==‘ ‘){
			start++;
		}
		while(start<=end &&str.charAt(end)==‘ ‘){
			end--;
		}
		String strimStr = str.substring(start,end+1);
		return strimStr;
	}

  2.对字符串进行反转,例如“abcdefg”,反转成为“abfedcg”

package www.shangguigu.java.exer;
import org.junit.Test;

/*
 练习二:将一个字符串进行反转。将字符串的一部分进行反转,比如讲“abcdefg"反转为”abfedcg".
 练习三:
 */
public class StringDemo {
	@Test
	public void test2(){
		String str = "abcdefg";
		String revStr1 = StringDemo.reverseString1(str, 2, 5);
		System.out.println(revStr1);
		String revStr2 = StringDemo.reverseString2(str, 2, 5);
		System.out.println(revStr2);

	}
	//练习二:方法一:使用截取字符串的方式
	public static String reverseString1(String str,int start,int end){
		String str1 = str.substring(0,start);
		String str2 = str.substring(end+1);
		for(int i=end;i>=start;i--){
			char c = str.charAt(i);
			str1 += c;
		}
		str1 += str2;

		return str1;
	}
	//练习二:方法二:通过将字符串转发成字符数组,在进行反转操作,最后在将字符数组转换成字符串
	public static String reverseString2(String str,int start ,int end){
		char [] strArray = str.toCharArray();
		return reverseCharArray(strArray,start,end);
	}
	public static String reverseCharArray(char[] strArray,int start,int end){
		for(int i=start,j=end;i<end;i++,j--){
			char temp = strArray[i];
			strArray[i] = strArray[j];
			strArray[j] = temp;
		}
		return new String(strArray);
	}

  3.获取一个字符串在另一个在字符串中出现的次数。例如:

:获取“ab”在 “abkkcadkabkebfkabkskab”中出现的次数
package www.shangguigu.java.exer;
import org.junit.Test;

/*
 练习三:获取一个字符串在另一个字符串中出现的次数。 比如:获取“ab”在 “abkkcadkabkebfkabkskab”中出现的次数
 */
public class StringDemo {
	@Test
	public void test3(){
		String str1 = "abcab3fabkkkabddcadl";
		String str2 = "ab";
		int count = StringDemo.getTime(str1, str2);
		System.out.println(count);

	}
	//练习3:获取一个字符串在另一个字符串中出现的次数。获取str2在str1中出现的次数
	public static int getTime(String str1,String str2){
		int count = 0;
		int len;
		while((len=str1.indexOf(str2))!=-1){ //str1.indexof(str2) 判断str2在str1中首次出现的位置
			count++;
			str1 = str1.substring(len + str2.length());
		}
		return count;
	}

  

时间: 2024-12-28 10:35:09

尚硅谷JavaSEday18 String类练习题的相关文章

Java String类练习题

题目:1. 给定一个字符串,判断该字符串中是否包含某个子串.如果包含,求出子串的所有出现位置.如:"abcbcbabcb34bcbd"中,"bcb"子串的出现位置为: 1,7,12.字符串和子串均由用户输入 2.给定一个长度,随机产生一个该长度的字符串,由大写,小写字母以及数字组成 Java中随机数的生成: java.util.Random r = new java.util.Random(); int a = r.nextInt(100): a 0-99的随机数

java学习日记-尚硅谷0722班熊*: 坚持自己的学习方式

在尚硅谷北京java培训机构经过一段时间的紧张学习,在老师的带领下我重温了一边java基础.将我以前没有掌握的io和反射系统的学习了一边.老师以表格的形式将io流的体系画出来,让我更好的整理了脑袋里混乱的流关系.                我很喜欢数据库的学习方式,每天讲完课后可以有大量的练习,通过不同的方式锻炼学习到的内容.如果java基础也能够像数据库一样每个章节讲完后有大量的练习题就好了.毕竟java处了理解还需要很多的练习才能融会贯通,特别是类和类之间的关系使用.         

3.尚硅谷_MyBatis_HelloWorld.avi

CREATE TABLE `tbl_employee` ( `id` int(11) NOT NULL AUTO_INCREMENT, `last_name` varchar(255) DEFAULT NULL, `gender` varchar(1) DEFAULT NULL, `email` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 建立与之对应的bean文件 pac

尚硅谷springboot学习14-自动配置原理

配置文件能配置哪些属性 配置文件能配置的属性参照 自动配置的原理 1).SpringBoot启动的时候加载主配置类,开启了自动配置功能 @EnableAutoConfiguration 2).@EnableAutoConfiguration 作用: 利用EnableAutoConfigurationImportSelector给容器中导入一些组件? 可以查看selectImports()方法的内容: List<String> configurations = getCandidateConfi

20191003 尚硅谷Spring Cloud教学视频

视频信息 视频日期:2018-4-19 讲师:尚硅谷周阳 Spring Cloud版本:Dalston.RELEASE 当前版本:Greenwich SR3 微服务.微服务架构.Spring Cloud 微服务和微服务架构 提出者:马丁弗勒 提出时间:2014 对于微服务,业界还没有一个统一的定义. 微服务架构是一种架构模式或者说是架构风格,提倡将单一应用程序根据业务划分成一组小的服务,每个服务运行于独立的进程中.服务间互相配合,基于轻量级的通信机制(基于HTTP的RESTful API). 微

java学习笔记-1205班李夏*:弱弱的说一句:尚硅谷,你值得拥有

时间过得真快,一晃眼一个月都过去了.记得前几个月看尚硅谷java视频的情景,还很清晰. 在这一个月中从最开始来北京java培训时的激动到现在的对北京的适应感觉经历了许多许多,再这一个月中我对北京的人文文化有了比较深入的了解,发现原来一个团队,集体可以如此和谐,每个人也都可以如此努力的为梦想,为工作,使我有了莫名的动力. 对于前一个阶段的总结,我主要可以分为以下几个方面: 第①方面:在学习上的总结,由于学校的期末考试我不得已把自己来北京的时间推迟了两周,来了之后发现这里的进度特别快,心想这下死定了

尚硅谷java学科新增面试宝典视频教程

下载地址:百度网盘下载 01_尚硅谷_JavaSE面试题:自增变量.avi02_尚硅谷_JavaSE面试题:单例设计模式.avi03_尚硅谷_JavaSE面试题:类初始化和实例初始化等.avi04_尚硅谷_JavaSE面试题:方法的参数传递机制.avi05_尚硅谷_JavaSE面试题:递归与迭代.avi/ y5 H4 N9 v6 k; t1 }06_尚硅谷_JavaSE面试题:成员变量与局部变量.avi1 I5 k& R5 c& d07_尚硅谷_SSM面试题_Spring Bean的作用域

注解2 --- 自定义 Annotation --- 技术搬运工(尚硅谷)

定义新的 Annotation 类型使用 @interface 关键字 自定义注解自动继承了java.lang.annotation.Annotation接口 Annotation 的成员变量在 Annotation 定义中以无参数方法的形式来声明.其方法名和返回值定义了该成员的名字和类型.我们称为配置参数.类型只能是八种基本数据类型.String类型.Class类型.enum类型.Annotation类型.以上所有类型的数组. 可以在定义 Annotation 的成员变量时为其指定初始值, 指

java String 类 基础笔记

字符串是一个特殊的对象. 字符串一旦初始化就不可以被改变. String s = "abc";//存放于字符串常量池,产生1个对象 String s1=new String("abc");//堆内存中new创建了一个String对象,产生2个对象 String类中的equals比较字符串中的内容. 常用方法: 一:获取 1.获取字符串中字符的个数(长度):length();方法. 2.根据位置获取字符:charAt(int index); 3.根据字符获取在字符串中