java实训报告_Java实验报告三

Java实验报告

班级计科二班 学号20188450 姓名李代传

完成时间2019.9.20

评分等级

实验三 String类的应用

实验目的

掌握类String类的使用;

学会使用JDK帮助文档;

实验内容

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

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

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

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

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

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

3.已知字符串"ddejidsEFALDFfnef2357 3ed"。输出字符串里的大写字母数,小写英文字母数,非英文字母数。

实验过程

实验代码

b8a2fd0d8dd20f5269b6dcb9a8aad8c3.png

算法详解:很简单,就是使用字符串的indexOf()方法找到被查找的字符串中的第一个需要查找的字符串,然后从这个索引的后一个位置继续查找。因为查找都是用的一种算法,只需要改变小部分参数就行了,所以我把它单独写成了一个方法。StringBuffer中有能倒序输出的方法,所以把字符串当做参数new了一个StringBuffer就很简单。

1.实验结果

7fbd98ac5558f20965696b20cdf98988.png

2.实验代码

919f317a56b07b91271846cdec3a777b.png

算法详解:把输入的字符串用toCharArray()方法拆分成字符数组,然后一个字符一个字符的进行操作。用x来记录是解密或者是加密,这样就能在后面决定是+3或者是-3,能通过这一个变量来节省很多重复语句。

算法详解:下面这个就是加密算法,用了String类的substring方法,作用是得到指定位置的字符串。因为是向后移动三位,所以就直接把最后三个字符取出来放到最前面就好了。但是原来的字符串没有变,所以要把最后三个字符去掉,用了StringBuffer类中的replace方法,作用是替换掉指定位置的字符串,我把替换为了空字符串,就相当于删除了。然后直接输出,就得到了加密的算法咯。解密算法就是反过来啦。

0033e3662e8f6f77e11b49d032d3043b.png

59a2ebe6cf3083f2af4165be5fd1e58c.png

2.实验结果

861a8316a6e6a501ecac5ed1a2f3e364.png

8e7fcd0fcc3d1fc715947e6042713520.png

11559934.html

969ed6c082c3f14ccb4fb3e54d316277.png

实验代码

75ed44048e298824c230e6b5288d5af8.png

算法详解:最开始就是拆分,字符串转变为字符数组用toCharArray()方法,也可以先打出"char[] ch=s."这样eclipse就会自己在后面跳出来符合字符数组类型的方法,第一个就是toCharArray()。然后单个字符按顺序判断就行了。

3.实验结果

d72fc2050713bf1c60ffa58710a9ca40.png

一、总结:实验很简单,中间几乎没有遇到过问题,全部问题都在写源代码的时候就解决了。但是做这些作业,还是加深了我对于字符串的认识,并且知道了诸多方法的使用。

二、课程总结:

1.在课程上又学了一遍知道的知识,加深了我对java基本知识的了解。比如说重载和重写,虽然老师说的是重载和覆写,但是都一样,都是Overloading和Overriding,具体就不说了,大家都知道的。

2.继承(extends)只能发生在类(class)和类之间,接口(interface)和接口之间。实现(implements)就不一样了,是用在类和接口之间,并且能多重实现。

3.在继承中,有一个重要的原则,就是就近原则,这很重要,就比如:在父类中定义一个变量,同时在父类中定义一个公共方法进行输出这个变量。然后在子类中定义一个一模一样的变量。创造这个子类的实例,调用父类的输出这个变量的方法,会输出父类中的变量。开始我一直搞不懂为什么,我觉得这个父类中的变量应该已经被子类的变量覆盖了,我开始还纳闷为什么不是子类中的变量,直到学了就近原则才搞懂。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值