实验三 String类的应用

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

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

  • 统计该字符串中字母s出现的次数。
  • 代码:
  • public class Wrold{
    public static void main(String[] args) {
    String str="this is a test of java";
    int count=0;
    for(int i=0;i<str.length();i++) {
    if(str.charAt(i)=='s')
    count++;
    }
    System.out.println("字符串里面“s”出现的次数:"+count);
    }
    }

    截图:

  • 统计该字符串中子串“is”出现的次数。
  • 代码:
    public class Wrold{
    public static void main(String[] args) {
    String str="this is a test of java";
    int count=0;
    for(int i=0;i<str.length();i++) {
    if(str.charAt(i)=='i'&&str.charAt(i+1)=='s')
    count++;
    }
    System.out.println("字符串中子串“is”出现的次数:"+count);
    }
    }

    截图:

  • 统计该字符串中单词“is”出现的次数。
  • 代码:
    public class Wrold{
    public static void main(String[] args) {
    String str="this is a test of java";
    String s[]=str.split(" ");
    int count=0;
    for(int i=0;i<s.length;i++) {
    if(s[i].equals("is"))
    count++;
    }
    System.out.println("该字符串中单词“is”出现的次数:"+count);
    }
    }

    截图:

  • 实现该字符串的倒序输出。
  • 代码:
    public class Wrold{
    public static void main(String[] args) {
    StringBuffer n=new StringBuffer();
    n.append("this is a test of java");
    String str=n.reverse().toString();
    System.out.println(str);
    }
    }

    截图:

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

代码:

public class Wrold{
public static void main(String[] args){
String str="123456";
Scanner sc=new Scanner(System.in);
String str=sc.nextLine();
char m[]=str.toCharArray();
char n[]=new char[50];int j=0;
for(int i = m.length-3;i<m.length;i++) {
n[j]=m[i];
j++;
}
for(int i=0;i<m.length-3;i++){
n[j]=m[i];
j++;
}
System.out.print(n); }
}

截图:

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

代码:

public class Wrold{
public static void main(String[] args) {
String str="ddejidsEFALDFfnef2357 3ed";
int a=0, b=0, c=0;
for(int i=0;i<str.length();i++) {
if(str.charAt(i)>=70&&str.charAt(i)<=95) {
a++;
}
else if(str.charAt(i)>=70&&str.charAt(i)<=100) {
b++;
}
else
c++;
}
System.out.println("大写字母数:"+a);
System.out.println("小写英文字母数:"+b);
System.out.println("非英文字母数:"+c);
} }

截图:

学习总结:本次实验第一部分主要是运用string类,老师在上课的时候大部分都讲了,我也拍了图。第二题,运行不出来,程序我觉得应该没有问题

this与super关键字的区别:

this:当前对象

super:直接父类对象

this():当前类的无参构造方法,也可以指定有参的如:this(a)

super():直接父类的无参构造方法,也可以指定有参的如:super(a)

注意:1,当在方法内调用一个变量b,编译器会向上遍历,直到找到最近的一个引用变量为止:b—>this.b—>super.b,如果未找到,编译器将显式提                   示错误信息;

2,当变量b的定义只发生在父类时,此时  b=this.b=super.b;

3,当局部变量b覆盖成员变量b时,使用this.b调用成员变量,此时的成员变量包括子类新增和继承的变量,不包含隐藏变量;

4,当子类成员变量b覆盖父类成员变量b时,使用super.b调用这个被隐藏的成员变量;

5,当子类重写了父类方法method(),可以使用super.method()来调用父类被隐藏的方法;

6,super()与this()具备硬性使用条件,否则编译无法通过——Constructor call must be the first statement in a constructor.即

二者出现的位置必须是构造方法的第一行。

继承:Java中类只允许单一继承。

重载与覆盖:

书上169页.

第三次实验报告&&学习总结的更多相关文章

  1. 第五周学习总结&第三次实验报告(String类的应用)

    第五周学习总结 1.学习了继承的相关知识点: (1) 继承的格式为class 子类 extends 父类{} (2) 继承实际上是通过子类去扩展父类的功能 (3) 一个子类只能继承一个父类,也就是说, ...

  2. 20155217 《Java程序设计》第三次实验报告

    20155217 <Java程序设计>第三次实验报告 实验内容 XP基础 XP核心实践 相关工具 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)>&l ...

  3. 20145335《java程序设计》第三次实验报告

    20145335郝昊<java程序设计>第三次实验报告 实验目的与要求 以结对编程的方式编写一个软件,Blog中要给出结对同学的Blog网址,可以拍照展现结对编程 情况,可以参考一下其他学 ...

  4. 20145240 《Java程序设计》第三次实验报告

    20145240 <Java程序设计>第三次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1452 指导教师:娄嘉鹏 实验日期:2016.04.22 实验 ...

  5. 20145320《Java程序设计》第三次实验报告

    20145320<Java程序设计>第三次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.22 15: ...

  6. 第三次实验报告 敏捷开发与XP实践

    一.  实验内容 (一)敏捷开发与XP 摘要:一项实践在XP环境中成功使用的依据通过XP的法则呈现,包括:快速反馈.假设简单性.递增更改.提倡更改.优质工作.XP软件开发的基石是XP的活动,包括:编码 ...

  7. 20145309java第三次实验报告

    实验三 敏捷开发与XP实践 实验内容 •下载并学会使用git上传代码: •与同学结对,相互下载并更改对方代码,并上传: •实现代码的重载. 实验步骤 下载并用git上传代码: •1.下载并安装好git ...

  8. 第一次实验报告&学习总结

    实验报告一&学习总结 一.实验目的 熟悉JDK开发环境 熟练掌握结构化程序设计方法 二.实验内容 打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身.例 ...

  9. 实验楼课程管理程序-深入学习《C++ Primer第五版》实验报告&学习笔记1

    本片博客为实验楼的训练营课程深入学习<C++ Primer第五版>的实验报告和学习笔记. 原课程地址为:https://www.shiyanlou.com/courses/405# 原文出 ...

随机推荐

  1. CSS中filter属性的使用

    filter 属性定义了元素的可视效果 blur 给图像设置高斯模糊."radius"一值设定高斯函数的标准差,或者是屏幕上以多少像素融在一起, 所以值越大越模糊. 如果没有设定值 ...

  2. Python面向对象的三大特性之继承和组合

    继承和组合 一.组合 组合:组合指的是,在一个类中以另外一个类的对象(也就是实例)作为数据属性,称为类的组合 也就是说:一个类的属性是另一个类的对象,就是组合 例子: 圆环是由两个圆组成的,圆环的面积 ...

  3. NOIP2016提高A组五校联考4总结

    坑爹的第一题,我居然想了足足3个小时,而且还不确定是否正确. 于是,我就在这种情况下心惊胆跳的打了,好在ac了,否则就爆零了. 第二题,树形dp,本来差点就想到了正解,结果时间不够,没打完. 第三题, ...

  4. 【NOIP2016提高A组五校联考4】label

    题目 题目 20%算法 设\(f_{i,j}\)表示第i个节点选了j这个权值的方案数. 显然转移方程为,\[f_{i,j}=\Pi_{v=son(i)}(\sum_{k=1}^{j-k}f_{v,k} ...

  5. tf.concat( )和tf.stack( )

    相同点:都是组合重构数据. 不同点:concat()不改变维数,而stack改变了维数(待定!!!) tf.concat是连接两个矩阵的操作,请注意API版本更改问题,相应参数也发生改变,具体查看AP ...

  6. 学习经常遇到的浮动(float)

    参考自 小辉随笔: https://www.cnblogs.com/lchsirblog/p/9582989.html 一.什么时候需要使用浮动 最常见的情景是:多个块级元素(如div)需要同一行显示 ...

  7. linux下为已经编译好的php环境添加mysql扩展(php安装完成后如何添加mysql扩展)

    问题背景 平常我们都是先安装mysql,然后才能去安装php.假如先安装php,后安装mysql,由于php需要连接mysql,因而在php引擎中需要配置使用mysql.so扩展.这时需要手动编译生成 ...

  8. php上传视频大文件

    理清思路: 引入了两个概念:块(block)和片(chunk).每个块由一到多个片组成,而一个资源则由一到多个块组成 块是服务端的永久数据存储单位,片则只在分片上传过程中作为临时存储的单位.服务端会以 ...

  9. 【bzoj1026】[SCOI2009]windy数

    *题目描述: windy定义了一种windy数.不含前导零且相邻两个数字之差至少为2的正整数被称为windy数. windy想知道,在A和B之间,包括A和B,总共有多少个windy数? *输入: 包含 ...

  10. SQL语法——Join详解

    一.INNER JOIN 用法: select column_name(s) from table 1 INNER JOIN table 2 ON table 1.column_name=table ...