博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第五周课程总结&试验报告(三)
阅读量:5009 次
发布时间:2019-06-12

本文共 2993 字,大约阅读时间需要 9 分钟。

实验三 String类的应用

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

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

(1).统计该字符串中字母s出现的次数。

实验代码:

package 实验三;public class zifu1 {    public static void main(String[] args) {        String str = "this is a test of java";            int count=0;//用来计数            for(int i =0;i

 实验结果:

 

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

实验代码:

package 实验三;public class zifu2 {    public static void main(String[] args) {        int num = beginIndex("This is a test of Java","is");            System.out.println("字符串is出现的次数:"+num); }     public static int beginIndex(String str,String substr){         int count = 0;         for(int i=0;i

 实验结果:

 

 

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

实验代码:

package 实验三;public class zifu3 {    public static void main(String[] args) {        int num = beginIndex("This is a test of Java","is");            System.out.println("字符串is出现的次数:"+num); }     public static int beginIndex(String str,String substr){         int count = 0;         for(int i=0;i

 实验结果:

 

 

(4).实现该字符串的倒序输出。

实验代码:

package 实验三;public class zifu4 {    public static void main(String[] args){        StringBuffer sb=new StringBuffer("this is a test of java");        System.out.println(sb.reverse().toString());    }}

 实验结果:

 

 

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

实验代码:

 

package 实验三;import java.util.Scanner;public class key {    public static void main(String[] args){        System.out.print("请输入一个字符串:");        Scanner sc=new Scanner(System.in);        String str=sc.nextLine();        char c[]=str.toCharArray();        char d[]=new char[50];int j=0;        for(int i = c.length-3;i

 实验结果:

 

 

 

 

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

实验代码:

package 实验三;public class zifu_number {    public static void main(String[] args){        String str="ddejidsEFALDFfnef2357 3ed";        int big=0;int small=0;int other=0;        for(int i =0;i
='a'&&c<='z'){ small++; }else if(c>='A'&&c<='z'){ big++; }else{ other++; } } System.out.println("大写字母个数为:"+big); System.out.println("小写字母个数为:"+small); System.out.println("其它字符个数为:"+other); }}

 实验结果:

实验总结:

第一大题是考察我们对String类的掌握及使用,在做题中用到的有Length():获取当前字串长度,charAt(int index):获取当前字符串对象下标index处的字符,substring():从指定位置开始一直取到尾进行字符串的截取,以及在网上找到的StringBuffer():实现对字符串的逆序。题目不难,找到合适的string类即可。

第二大题困扰了我蛮久的,最开始我和室友的思路是改变它们的ASCII值然后输出,结果只是改变它们的位置而已,前者要简单啊,问了助教,老师要我们用后者的思想去解决,开始呢我们的思路是循环进行字符位置的替换,但是问题就是把位置1上的元素1赋给位置位置4后,循环到位置4时,元素1的位置又会发生改变,这个方法行不通,想了很多改进方法,参考了其它同学的答案,判断出原码的后三位,将它们赋给新数组的前三位,一一输出,在将剩下的元素意义存入新数组的对应位置,进行输出,发现还是有问题,后来还是借鉴了其它同学的答案。觉得还是用另一个数组替换的思想比我自己想的要对点,是我自己想的不够全面啊。

第三大题最简单,获取字符串长度,用for循环判断,进行累加即可。

学习总结:

继承:在Java类中只允许单一继承,即一个子类只可以继承一个父类,且子类将继承父类的非私有属性和方法,但父类与子类只能一对一,即一个父类下面只有一个子类,但是那个子类可以作为父类进行下一次的继承。

方法的重载与复写:在重载中,方法名称相同,参数的类型或者个数不同,而覆盖都是相同的。覆盖只有发生在父类与子类之间,而重载可以发生在同一类中。

super():

1.super()从子类中调用父类的构造方法,this()在同一类内调用其它方法。

2.super()和this()均需放在构造方法内第一行,因此与this不能同时出现。

 

转载于:https://www.cnblogs.com/Jay-h/p/11594865.html

你可能感兴趣的文章
如何成为F1车手?
查看>>
QT自定义消息
查看>>
Save (Not Permitted) Dialog Box
查看>>
装饰模式(Decorator)
查看>>
任务13:在Core Mvc中使用Options
查看>>
利用Excel 2010数据透视图实现数字的可视化的图形直观展示
查看>>
Sort Colors
查看>>
iview树的修改某个节点,树刷新后自动展开你刚才展开的所有节点
查看>>
oracle服务起不来以及无法监听问题解决
查看>>
Mvc--Html.ActionLink()的用法
查看>>
delphi 基础书籍推荐
查看>>
《面向对象程序设计》2018年春学期寒假及博客作业总结
查看>>
iOS开发UI之KVC(取值/赋值) - KVO (观察某个对象的某个属性的改变)
查看>>
1.7 将一个MxN矩阵所有为0的元素所在行和列全部置0
查看>>
删除U盘时提示无法停止‘通用卷’设备的解决方法!!不要每次都硬拔了,对电脑有不小的损害!!!...
查看>>
Java中接口与接口和类之间的关系
查看>>
芯片TPS70925
查看>>
linux shell 发送email 附件
查看>>
人群密度估计 CrowdCount
查看>>
JSON.parse()和JSON.stringify()
查看>>