Java实验报告三

Java实验报告

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

完成时间 2019.9.20

评分等级

实验三 String类的应用

  1. 实验目的
    1. 掌握类String类的使用;
    2. 学会使用JDK帮助文档;
  2. 实验内容

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

  3. 统计该字符串中字母s出现的次数。
  4. 统计该字符串中子串"is"出现的次数。
  5. 统计该字符串中单词"is"出现的次数。
  6. 实现该字符串的倒序输出。

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

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

  1. 实验过程
  1. 实验代码

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

1.实验结果

 

2.实验代码

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

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

2.实验结果

 

  1. 实验代码

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

3.实验结果

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

二、课程总结:

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

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

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

原文地址:https://www.cnblogs.com/xqldc/p/11559934.html