实验三 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. NodeJs 提供了 exports 和 require 两个对象

    Node.js 提供了 exports 和 require 两个对象,其中 exports 是模块公开的接口,require 用于从外部获取一个模块的接口,即所获取模块的 exports 对象. 创建 ...

  2. Vue路由参数设置可有可无

    参数后面使用 ? id 后面加个 ‘ ? ’ ,将 id 设置为可选参数 { name: "index", path: '/p/:id?', component: resolve ...

  3. 京东供应链模式TC转运流程

    TC转运分上门提货和自己送货到网点 上门提货是TC委托第三方货运到商家提货,他们没有装货义务,需要商家自己装货等问题 上门提货简要流程: 采购单创建 商家打单打包出库(自己公司内部建单发货) TC预约 ...

  4. JS几种数组遍历方式总结

    JS数组遍历的几种方式 JS数组遍历,基本就是for,forin,foreach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比 第一种:普通for循环 代 ...

  5. UI编辑

    UI编辑 基本部件介绍 (1)Layout(布局) (2)Space(空间) (3)Button (4)ItemView (5)ItemWidget Widget继承自View,即ListWidget ...

  6. SQL 行转列(列的值不规则的数目)

    --创建一个临时表用来存储数据 create table #tmp_SNValue_Table (FieldName nvarchar(20), [Value] nvarchar(max)) inse ...

  7. sklearn 的 PolynomialFeatures 的用法

    官方文档:http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.PolynomialFeatures.html ...

  8. 地图服务 纬度、经度对应坐标轴x,y

    记下,供自己参考,中国地区的经纬度,经度大,纬度小 如上海经纬度为:(经度, 纬度)(y, x)(lon, lat) 121.48 31.22 纬度---lat----x轴 经度---lon---y轴

  9. Canvas 实现钟表

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. js测试用

    一,大纲 二,目录二 三,目录三