热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

第五周教学内容回顾与实验成果分析报告

在第五周的教学内容回顾与实验成果分析报告中,我们重点探讨了String类的应用。实验旨在使学生熟练掌握String类的各种操作方法,并学会利用JDK帮助文档解决实际问题。具体实验内容包括对给定字符串“thisisatestof”进行多种操作,如字符串分割、拼接、查找子字符串等,以加深对String类功能的理解和应用。通过本次实验,学生们不仅巩固了理论知识,还提升了实际编程能力。

实验三 String类的应用

实验目的
掌握类String类的使用;
学会使用JDK帮助文档;

实验内容

1.已知字符串:"this is a test of java".按要求执行以下操作:(要求源代码、结果截图。)

统计该字符串中字母s出现的次数。

1.1实验代码

package text4;public class Text41 {public static void main(String[] args) {String str=new String("this is a test of java");int i,count=0;char a[]=new char[20];a=str.toCharArray();for(i=0;i

运行截图

1581309-20190919115016384-980939684.png

统计该字符串中子串“is”出现的次数。

1.2实验代码

package text4;public class Text4 {public static void main(String[] args) {String str=new String("this is a test of java");int count=0,a=0;while(str.indexOf("is",a)!=-1) {count++;a=str.indexOf("is",a)+2;}System.out.println(count);}}

运行截图

1581309-20190919122619474-1189611981.png

统计该字符串中单词“is”出现的次数。

1.3实验代码

package text4;public class Text4 {public static void main(String[] args) {String str=new String("this is a test of java");int count=0,i;String str1[]=str.split(" ");for(i=0;i

运行截图

1581309-20190919125503505-294686683.png

实现该字符串的倒序输出。

实验代码

package text4;public class Text4 {public static void main(String[] args) {String str=new String("this is a test of java");int a=str.length();int i;char b[]=new char[a];b=str.toCharArray();for(i=a-1;i>=0;i--) {System.out.print(b[i]);}}}

运行截图

1581309-20190919133937776-2063142569.png

2.请编写一个程序,使用下述算法加密或解密用户输入的英文字串。要求源代码、结果截图。

2.实验代码

package text4;import java.util.Scanner;public class Text4 {public static void main(String[] args) {Scanner sc&#61;new Scanner(System.in);System.out.print("输入一个字符串&#xff1a;");String str&#61;sc.nextLine();char a[]&#61;new char[str.length()];char b[]&#61;new char[str.length()];a&#61;str.toCharArray();int i;for(i&#61;0;i&#61;&#39;a&#39;&&a[i]<&#61;&#39;z&#39;) {if(a[i]&#61;&#61;&#39;x&#39;) {b[i]&#61;&#39;a&#39;;}if(a[i]&#61;&#61;&#39;y&#39;) {b[i]&#61;&#39;b&#39;;}if(a[i]&#61;&#61;&#39;z&#39;) {b[i]&#61;&#39;c&#39;;}if(a[i]>&#61;&#39;a&#39;&&a[i]<&#39;x&#39;) {b[i]&#61;(char) (a[i]&#43;3);}}if(a[i]>&#61;&#39;A&#39;&&a[i]<&#61;&#39;Z&#39;) {if(a[i]&#61;&#61;&#39;X&#39;) {b[i]&#61;&#39;A&#39;;}if(a[i]&#61;&#61;&#39;Y&#39;) {b[i]&#61;&#39;B&#39;;}if(a[i]&#61;&#61;&#39;Z&#39;) {b[i]&#61;&#39;C&#39;;}if(a[i]>&#61;&#39;A&#39;&&a[i]<&#39;X&#39;) {b[i]&#61;(char) (a[i]&#43;3);}}}String str2&#61;new String(b);System.out.print("加密后的密码&#xff1a;");System.out.println(str2);sc.close();}}

运行截图

1581309-20190925201347717-1826046953.png

3.已知字符串“ddejidsEFALDFfnef2357 3ed”。输出字符串里的大写字母数&#xff0c;小写英文字母数&#xff0c;非英文字母数。

3.实验代码

package text4;public class Text43 {public static void main(String[] args) {String str&#61;"ddejidsEFALDFfnef2357 3ed";char a[]&#61;new char[str.length()];a&#61;str.toCharArray();int i;int shuzi&#61;0,da&#61;0,xiao&#61;0;for(i&#61;0;i&#61;&#39;0&#39;||a[i]&#61;&#61;&#39; &#39;) {shuzi&#43;&#43;;}if(a[i]<&#61;&#39;z&#39;&&a[i]>&#61;&#39;a&#39;) {xiao&#43;&#43;;}if(a[i]<&#61;&#39;Z&#39;&&a[i]>&#61;&#39;A&#39;) {da&#43;&#43;;}}System.out.println("非英文字母数&#xff1a;"&#43;shuzi);System.out.println("小写字母&#xff1a;"&#43;xiao);System.out.println("大写字母&#xff1a;"&#43;da);}}

运行截图

1581309-20190919142049291-86493018.png

总的来说呢&#xff0c;这次的实验题目做起来还算顺手&#xff0c;主要就是调用了一些string的函数。

课程总结

一&#xff1a;学习了Java的另一特性继承性

1&#xff09;继承格式

class 父类{}
class 子类 extends{}

2&#xff09;可以通过子类扩展父类
3&#xff09;只允许多层继承&#xff0c;不允许多重继承。
4&#xff09;子类不能直接访问父类中的私有操作&#xff0c;但可以通过get方法访问。
5&#xff09;子类构造方法中的super()。一般写类的时候要构造一个空方法&#xff0c;因为一般子类对象实例化之前会先默认调用父类中的构造方法&#xff0c;如果父类中没有构造方法&#xff0c;就会默认调用一个空的构造方法。 super&#xff08;&#xff09;就是调用父类构造方法的语句。

二&#xff1a;方法的覆写和重载

覆写&#xff1a;就是指子类中定义了与父类中同名的方法&#xff0c;但是要考虑权限&#xff0c;被子类覆写的方法不能拥有比父类方法更严格的访问权限&#xff0c;例如&#xff1a;父类(private)<&#61;子类(private||public)。
重载&#xff1a;同一个类中相同名称不同参数的方法。

三、final关键字&#xff08;表示的意思是最终的意思&#xff0c;也可以称为完结器&#xff09;

1&#xff09;使用final声明的类不能有子类
2&#xff09;使用final声明的方法不能被子类所覆写
3&#xff09;使用final声明的变量级成为常量&#xff0c;常量不可以修改

四、抽象类

1&#xff09;包含一个抽象方法的类必须是抽象类。抽象方法如下&#xff1a;

访问权限 abstract 返回值类型 方法名称&#xff08;参数&#xff09;&#xff1b;

2&#xff09;抽象类和抽象方法都要使用abstract关键字声明
3&#xff09;抽象方法只需声明而不需要实现
4&#xff09;抽象类必须被子类继承&#xff0c;子类&#xff08;如果不是抽象类&#xff09;必须填写抽象类中的全部抽象方法

五、对象的多态性

1&#xff09;向上转型&#xff1a;子类对象→父类对象&#xff08;自动转换&#xff09;
2&#xff09;向下转型&#xff1a;父类对象→子类对象&#xff08;强制转换&#xff09;

转:https://www.cnblogs.com/H-Alice/p/11549238.html



推荐阅读
  • 开发笔记:校园商铺系统中店铺注册功能模块的Controller层优化与重构
    开发笔记:校园商铺系统中店铺注册功能模块的Controller层优化与重构 ... [详细]
  • 2019年后蚂蚁集团与拼多多面试经验详述与深度剖析
    2019年后蚂蚁集团与拼多多面试经验详述与深度剖析 ... [详细]
  • 在Spring框架中,基于Schema的异常通知与环绕通知的实现方法具有重要的实践价值。首先,对于异常通知,需要创建一个实现ThrowsAdvice接口的通知类。尽管ThrowsAdvice接口本身不包含任何方法,但开发者需自定义方法来处理异常情况。此外,环绕通知则通过实现MethodInterceptor接口来实现,允许在方法调用前后执行特定逻辑,从而增强功能或进行必要的控制。这两种通知机制的结合使用,能够有效提升应用程序的健壮性和灵活性。 ... [详细]
  • Spring注解开发指南:@Resource与@Component详解 ... [详细]
  • 深入解析Spring框架中的双亲委派机制突破方法
    在探讨Spring框架中突破双亲委派机制的方法之前,首先需要了解类加载器的基本概念。类加载器负责将类的全限定名转换为对应的二进制字节流。每个类在被特定的类加载器加载后,其唯一性得到保证。然而,这种机制在某些场景下可能会限制灵活性,因此Spring框架提供了一些策略来突破这一限制,以实现更加动态和灵活的类加载。这些策略不仅能够提升系统的可扩展性,还能在复杂的运行环境中确保类的正确加载和管理。 ... [详细]
  • 如何在Java中高效构建WebService
    本文介绍了如何利用XFire框架在Java中高效构建WebService。XFire是一个轻量级、高性能的Java SOAP框架,能够简化WebService的开发流程。通过结合MyEclipse集成开发环境,开发者可以更便捷地进行项目配置和代码编写,从而提高开发效率。此外,文章还详细探讨了XFire的关键特性和最佳实践,为读者提供了实用的参考。 ... [详细]
  • 如何构建基于Spring MVC框架的Java Web应用项目
    在构建基于Spring MVC框架的Java Web应用项目时,首先应创建一个新的动态Web项目。接着,需将必要的JAR包导入至WebContent/WEB-INF/lib目录下,确保包括Spring核心库及相关依赖。如遇缺失的JAR包,可向社区求助或通过Maven等工具自动下载。正确配置后,即可开始搭建应用结构与功能模块。 ... [详细]
  • 技术日志:深入探讨Spark Streaming与Spark SQL的融合应用
    技术日志:深入探讨Spark Streaming与Spark SQL的融合应用 ... [详细]
  • Java新手求助:如何优雅地向心仪女生索要QQ联系方式(附代码示例与技巧)
    在端午节后的闲暇时光中,我无意间在技术社区里发现了一篇关于如何巧妙地向心仪女生索取QQ联系方式的文章,顿时感到精神焕发。这篇文章详细介绍了源自《啊哈!算法》的方法,不仅图文并茂,还提供了实用的代码示例和技巧,非常适合 Java 新手学习和参考。 ... [详细]
  • Java 8 引入了 Stream API,这一新特性极大地增强了集合数据的处理能力。通过 Stream API,开发者可以更加高效、简洁地进行集合数据的遍历、过滤和转换操作。本文将详细解析 Stream API 的核心概念和常见用法,帮助读者更好地理解和应用这一强大的工具。 ... [详细]
  • 高效排序算法是提升数据处理速度的重要技术。通过优化排序算法,可以显著提高数据处理的效率和性能。本文介绍了几种常见的高效排序算法,如快速排序、归并排序和堆排序,并通过实例代码展示了它们的具体实现。实验结果表明,这些算法在大规模数据集上的表现尤为突出,能够有效减少数据处理时间,提升系统整体性能。 ... [详细]
  • Android ListView 自定义 CheckBox 实现列表项多选功能详解
    本文详细介绍了在Android开发中如何在ListView的每一行添加CheckBox,以实现列表项的多选功能。用户不仅可以通过点击复选框来选择项目,还可以通过点击列表的任意一行来完成选中操作,提升了用户体验和操作便捷性。同时,文章还探讨了相关的事件处理机制和布局优化技巧,帮助开发者更好地实现这一功能。 ... [详细]
  • 深入解析十大经典排序算法:动画演示、原理分析与代码实现
    本文深入探讨了十种经典的排序算法,不仅通过动画直观展示了每种算法的运行过程,还详细解析了其背后的原理与机制,并提供了相应的代码实现,帮助读者全面理解和掌握这些算法的核心要点。 ... [详细]
  • 本课程详细解析了Spring AOP的核心概念及其增强机制,涵盖前置增强、后置增强和环绕增强等类型。通过具体示例,深入探讨了如何在实际开发中有效运用这些增强技术,以提升代码的模块化和可维护性。此外,还介绍了Spring AOP在异常处理和性能监控等场景中的应用,帮助开发者更好地理解和掌握这一强大工具。 ... [详细]
  • 如何在Android应用中设计和实现专业的启动欢迎界面(Splash Screen)
    在Android应用开发中,设计与实现一个专业的启动欢迎界面(Splash Screen)至关重要。尽管Android设计指南对使用Splash Screen的态度存在争议,但一个精心设计的启动界面不仅能提升用户体验,还能增强品牌识别度。本文将探讨如何在遵循最佳实践的同时,通过技术手段实现既美观又高效的启动欢迎界面,包括加载动画、过渡效果以及性能优化等方面。 ... [详细]
author-avatar
王文波玉龙_946
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有