String类练习题

2023-11-03

1. 编写一个方法,将一段文本中的各个单词的字母顺序翻转,
   例如:“To be or not to be",将变成"oT eb ro ton ot eb"。
2. String s=”name=zhangsan age=18 classNo=090728”;
   将上面的字符串中包含的信息存放到Student(里面有name,age,classNo三个属性)的对象中:
3. 上网查询 instanceof 这个关键字的用法,并用用代码演示
4.自己写代码实现String类中的charAt方法和indexOf方法,不允许使用String中的方法实现
5.自己写代码实现String类中的contains方法,不允许使用String中的方法实现

 

package Demo7;

class Demo {

}

public class Demo7 extends Demo {

	public static void test1() {
		String str = "To be or not to be";
		String s = "";
		String[] strs = str.split(" ");
		for (int i = 0; i < strs.length; i++) {
			char[] ch = strs[i].toCharArray();
			for (int j = 0; j < ch.length / 2; j++) {
				char temp = ch[j];
				ch[j] = ch[ch.length - 1 - j];
				ch[ch.length - 1 - j] = temp;
			}
			strs[i] = String.valueOf(ch);
			s += strs[i] + " ";
		}

		System.out.println("第一题:" + s);
	}

	public static void test2() {
		Student student = new Student();
		String str = " name=zhangsan age=18 classNo=090728";
		String[] strs = str.trim().split(" ");
		for (int i = 0; i < strs.length; i++) {
			strs[i] = strs[i].substring((strs[i].indexOf("=")) + 1);

		}
		student.setName(strs[0]);
		student.setAge(strs[1]);
		student.setClassNo(strs[2]);
		System.out.println("第二题:" + student);
	}

	public static boolean test3() {
		Demo demo1 = new Demo(); // 父类
		Demo7 demo2 = new Demo7(); // 子类
		return demo2 instanceof Demo;
	}

	public static char test4_charAt(String str, int index) throws ArrayIndexOutOfBoundsException {
		char[] ch = str.toCharArray();
		if (index > ch.length - 1 || index < 0) {
			throw new ArrayIndexOutOfBoundsException();
		}
		for (int i = 0; i < ch.length; i++) {
			if (i == index) {
				return ch[i];
			}
		}
		return 0;

	}

	public static int test4_indexOf(String str, String str1) {
		String[] strs = str.split("");
		for (int i = 0; i < strs.length; i++) {
			if (str1.equals(strs[i])) {
				return i;
			}
		}
		return -1;
	}

	public static boolean test5_contains(String str, String str1) {
		String[] strs = str.split("");
		for (int i = 0; i < strs.length - str1.length() + 1; i++) {
			String s = "";
			for (int j = i; j < str1.length() + i; j++) {
				s += strs[j];
			}
			if(str1.equals(s)) {
				return true;
			}
		}
		return false;
	}

	public static void main(String[] args) {

		test1();
		test2();
		System.out.println("第三题:" + test3());
		try {
			System.out.println("第四题的charAt方法:" + test4_charAt("abcde", 3));
		} catch (ArrayIndexOutOfBoundsException e) {
			System.err.println("数组下标越界!");
		}
		System.out.println("第四题的indexOf方法:" + test4_indexOf("abcde", "c"));

		System.out.println("第五题:" + test5_contains("abcde", "ae"));
	}

}


 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

String类练习题 的相关文章

  • 2022年了,该学C++还是Java?

    最近好多朋友私信我 C 好不好学 学C 好还是Java好 我的回答是 C 不好学 但你觉得C 不好学的话 Java也不好学 因为C 难是难在语言本身 java难是难在各种框架和库 C 学习进阶比较陡 对新手不友好 新手写起来代码 心智负担很
  • THREEJS在场景图上动态标识一些文字方法二(文字精灵sprite)

    threejs文字精灵sprite的实现 1 手动添加文字精灵 2 通过json动态获取文字精灵 并进行交互 3 point模型只表示位置 4 CircleGeometry实现 5 3 PlaneGeometry表示 方法 使用sprite
  • Java基础17--重写与重载

    Java基础17 重写与重载 文章目录 Java基础17 重写与重载 重写 Override 方法的重写规则 Super 关键字的使用 重载 Overload 重写与重载之间的区别 总结 重写 Override 重写是子类对父类的允许访问的
  • python学习笔记(一)---第一个python程序

    1 Windows CMD命令 cd 文件夹名称 进入指定文件夹 dir 查看当前目录下的文件 2 python的运行 在命令行敲入pthon 进入python交互模式 交互模式下的提示符是 gt gt gt 然后就可以敲代码 如print
  • Qt实战之实现图片浏览系统

    引言 本系统支持 自动播放 左右拖动切换 点击列表切换 点击按钮切换 是一个标准的图像浏览软件 Windows 图片浏览器 可以查看当前文件夹下的图片 往上翻 往下翻并且自动播放 此系统增加一个列表 本文福利 莬费领取Qt开发学习资料包 技
  • 期货开户控制风险才能获取更大的利润

    1 其实成为一个优秀的投资者其实并不是很难 不信吗 只要你能树立在市场上生存的正确原理 并坚持恰当地运用它 不要去想着市场会涨还是会跌 就像不要试图预测白云明天的形状和今天有何不同 你只需看到乌云浓重时带一把雨伞出门就行了 金融市场上的语言
  • 如何零基础创建自己的微信小程序

    目录 创建微信小程序 步骤 1 打开浏览器搜索微信公众平台 2 一般是先要注册的 当然已经有的就不需要了 3 选择注册的类型 关于 小程序怎么开发自己的小程序 这个不少人关注的问题 小编针对性的给出详细教程 一共22个步骤 1 进入公众平台
  • shell脚本 dos格式转unix

    bin shdostype dosIFS echo en n b function iterate dir for file in 1 doif f file thentypename file file grep q CRLF echo
  • Java将字符串反转的几种方式

    一 使用 StringBuilder 或 StringBuffer 的 reverse 方法 他们的本质都是调用了它们的父类 AbstractStringBuilder 的 reverse 方法实现的 需要JDK1 8 使用StringBu
  • sqli-labs进阶篇 32关~38关

    本文章主要讲述sqli labs靶场第32关到38关的通关心得 从三方面讲述如何通关 分别是注入点判断 源码分析 注入过程 文章若有不恰当之处 望指出 第三十二关 判断注入点 注入单引号和双引号时 都有转移字符出现 说明这里不能直接用单 双
  • 你可以做到

    我经常听到有些人说 好难呀 我做不到 我想说 你只是不知道你能 最近很累 但是我实在是不想再后悔了 这两个月经历的一些事 打醒了我这只井底之蛙 为什么他们有 而我没有 为什么他们能做到 我却没有做到 最重要的是我一点不比他们差 好累啊 但是
  • 按“enter回车”或者“失去焦点”实现输入框内容的修改

    最近做一个简单的todo应用时 有这样一个场景 某个输入框中点击回车 keyup enter 和失去焦点 blue 这两个操作均可以触发修改数据的接口 然而每次按回车后又会触发 blur 接口会调用两次 但是又的确得加入这两个操作 仅适用一
  • c语言 运算符%的运用,C语言中"++、--"运算符的灵活运用

    第3卷第1期 2003年3月 南京工业职业技术学院学报 Journal of Nanjing Institute of Industry Technology V01 3 1 Mar 2003 C语言中 一一 运算符的灵活运用 李虹 南京工
  • 2021前端面试题总结(持续更新中)

    JavaScript基础部分 typeof返回的数据类型有哪些 4 1 1 typeof为什么对null错误的显示4 1 1 typeof abc 和 typeof abc 都是 string 那么 typeof 是操作符还是函数 4 1
  • 一个骚命令防止你的文件被误删除!

    大家好 我是良许 文件是我们在电脑里最珍贵的财富 我们经常工作了老半天 然后出来的成果就只是一个文件而已 特别是程序员 我们写了半天的代码 结果也就是一个个代码文件而已 但是 我们都有过这样惨痛的经历 工作了老半天 结果不小心把文件删除了
  • NLP材料整理

    NLP相关知识讲解清晰 快速掌握 1 RNN Seq2Seq Attention注意力机制 https zhuanlan zhihu com p 51383402 2 CRNN CTC文字识别 https zhuanlan zhihu co
  • 计算机网络校园网建设设计摘要,计算机网络专业校园网建设设计.doc

    计算机网络专业校园网建设设计 目录 摘要I 第1章 校园网概述1 第2章 校园网的需求分析与设计方案3 2 1需求分析3 2 2网络层次分析4 2 3总体设计方案5 2 4网络设备选型6 2 5校园网拓扑结构图8 2 6信息点的设置9 第3
  • PCB设计相邻焊盘间走线

    1 对于SOP小引脚间距SMT元器件的Layout 有时候我们会遇到该类元器件相邻Pin脚之间需要网络互联的情况 有时候大家直接在焊盘中间走线将pin脚短接 如下图所示 左边第7第8焊盘之间直接短接在一起了 在电气连接上没有问题 但是在SM

随机推荐

  • 完整单链表程序

    本文采用插入采用头插法 删除采用任意位置删除 什么是链表 链表就是结构体变量与结构体变量通过指针连接在一起 单链表主要是数据域和指针域构成 单链表的编程思路 动态内存申请 模块化设计 1 动态内存申请就是为了使得结构体指针变为结构体变量 2
  • 2016年物联网:你需要知道这6点

    本文转载至 http net zdnet com cn network security zone 2016 0127 3072246 shtml 物联网把汽车 可穿戴设备 及所有日用品连接到云端 这是目前科技领域的一个热点 物联网领域的芯
  • vue项目中实现汉字转拼音缩写

    前段时间接到了这样一个需求 注册页面中有多个输入框 要求第一个输入框输入汉字后 第二个输入框自动填充对应的拼音开头缩写 实现思路是这样的 第一步完成拼音转汉字缩写功能 第二步为第一个输入框添加失焦事件 失焦时计算当前对应拼音缩写 如第一个输
  • Docker容器启动前的初始化(备忘)

    摘录至 https github com yeasy docker practice blob master image dockerfile entrypoint md 场景二应用运行前的准备工作 之前在做mysql的docker swa
  • Keras使用分批迭代(fit_generate)的方式训练数据

    文章参考 https blog csdn net lujiandong1 article details 54869170 说明 我是在keras的官方demo上进行修改https github com fchollet keras blo
  • Android Launcher应用进程启动流程 基于Android-12

    最近研究了一下Launcher应用进程的创建流程 记录一下 以下只记录一些关键点 因为整体流程特别繁琐 1 ActivityManagerService 应用进程的启动 切换和调度 四大组件的启动和管理 gt systemReady 系统服
  • 百度翻译js渗透

    项目 python请求百度翻译API接口 流程 1 目标网站 www fanyi baidu com 2 抓包找到正确的动态请求 3 分析请求参数 找出会变化的参数sign token 4 JS渗透 找出参数js生产过程 5 模拟js生产参
  • 使用Recyclerview实现多布局效果

    Android应用开发中Recyclerview的使用频率非常高 多布局是使用Recyclerview经常实现效果之一 这里简单介绍一下多布局的基本开发流程 实现一个简单的多布局效果 实现如下效果图 一 创建数据类 创建数据类 用以模拟多布
  • 线性代数之矩阵与坐标系的转换

    空间中的点是可以用向量来描绘的 这些点的描绘是基于我们自建的欧式空间坐标系下 我们可以用一个行向量来表示一个空间的点 那我们的要进行空间坐标的转换的时候怎么办呢 一个行向量 B 我可以理解成IB B的三个值既为三个行向量 1 0 0 0 1
  • ffmpegMP4编码转换为h264

    ffmpeg i input mp4 vcodec h264 output mp4
  • 让phpstorm智能提示laravel代码

    简介 PhpStorm 默认情况下是没有对Laravel框架的代码提示功能的 下面给出Laravel 5 在PhpStorm 2019 1版本下的安装过程 1 开一个laravel项目 2 在根目录运行如下命令 进行安装 copycompo
  • 创建applicationContext.xml

    1 创建applicationContext xml并导入头文件
  • Qt三维图形添加纹理,并使图形旋转。立体图形添加纹理。

    一重山 两重山 山远天高烟水寒 相思枫叶丹 菊花开 菊花残 塞雁高飞人未还 一帘风月闲 pro中添加 QT core gui opengl win32 LIBS lOpengl32 lglu32 lglut mainwindow h ifn
  • 跟我一起写 Makefile(十)

    跟我一起写 Makefile 十 本文来自于CSDN 陈皓博主 网址http blog csdn net haoel article details 2895 详细内容请参考其经典文章 跟我一起写makefile 陈皓
  • 树莓派VLC获取实时视频流

    一 安装VLC之前 升级安装程序apt get sudo apt get update sudo apt get upgrade 二 在摄像头已激活的情况下 安装VLC 输入命令 sudo apt get install vlc VLC安装
  • 【全解析】屏幕尺寸,分辨率,像素,PPI之间到底什么关系?

    全解析 屏幕尺寸 分辨率 像素 PPI之间到底什么关系 2015 09 02 12 22 稿源 产品100 5条评论 撤稿纠错 今天我给大家来讲讲这几个咱们经常打交道的词到底啥意思 以及他们之间到底有什么关系 这篇文章是我花了一个下午从N多
  • vue+nodejs实现文件上传

    前端
  • java 运算符

    运算符介绍 运算符是一种特殊的符号 用以表示数据的运算 赋值和比较等 算术运算符 算术运算符是对数值类型的变量进行运算的 常用的运算符有以下几个 注意 的本质 看一个公式 a b a a b b 注意先乘除后加减 当a和b都是小数或其中一个
  • python中如何使用正则表达匹配\本身?(文末赠书)

    点击上方 Python爬虫与数据挖掘 进行关注 回复 书籍 即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 将军向宠 性行淑均 大家好 我是皮皮 一 前言 前几天在Python钻石群 空 问了一个Python正则表达式的问题
  • String类练习题

    1 编写一个方法 将一段文本中的各个单词的字母顺序翻转 例如 To be or not to be 将变成 oT eb ro ton ot eb 2 String s name zhangsan age 18 classNo 090728