Java实验报告

班级计科二班 学号 20188429 姓名 罗璇哲

完成时间

评分等级

实验三 String类的应用

一、 实验目的

(1) 掌握类String类的使用;

(2) 学会使用JDK帮助文档;

二、 实验内容

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

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

源代码

public class Main1 {
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('s'==str.charAt(i))
count++;
}
System.out.println("'s'的个数为"+count);
} }

实验结果

② 统计该字符串中子串“is”出现的次数。

源代码

public class Main1 {
public static void main(String args[]) {
String str="this is a test of java";
int count=0;
char s[];
s=str.toCharArray(); for (int i=0;i<s.length;i++) {
if(s[i]=='i') {
for(int j=i;j<s.length;j++) {
if(s[j]=='s') {
count++;
break;
}
}
}
}
System.out.println("子串is的个数为"+count);
}
}

实验结果

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

实验源码

public class Main2 {
public static void main(String args[]) {
String str="this is a test of java"; String n[]=str.split(" ");
int count=0;
for(int i=0;i<6;i++) {
if(n[i].equals("is"))
count++;
}
System.out.println("单词is的个数是"+count);
} }

实验结果

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

源代码

public class Main3 {
public static void main(String args[]) {
StringBuffer s=new StringBuffer();
s.append("this is a test of java");
String str=s.reverse().toString();
System.out.println(str);
}
}

实验结果

第四题有借鉴到后面StringBuffer的常用方法,有使用reverse方法实现倒序。

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



源代码

    public class Main5{
public static void main(String[] args) {
System.out.println("输入一个字符串");
Scanner sc=new Scanner(System.in);
String s=sc.nextLine();
char a[]=s.toCharArray();
char b[]=new char [a.length];
int i=0,k=0;
if (a.length==1 ||a.length==2 ) {
System.out.println("请输入三位及以上字符");
}
else {
for(i=a.length-3;i<a.length;i++) {
b[k]=a[i];
k++;
}
for(i=0;i<a.length-3;i++) {
b[k]=a[i];
k++;
}
System.out.println("输出加密的结果"+String.valueOf(b));
} }
}

实验结果

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

源代码

     public static void main(String args[]) {
String str="ddejidsEFALDFfnef2357 3ed";
int big=0,small=0,blank=0;
for(int i=0;i<str.length();i++) {
char s=str.charAt(i);
if (s>='A' && s<='Z') {
big++;
}
else if(s>='a' && s<='z') {
small++;
}
else {
blank++;
}
}
System.out.println("大写字母有"+big+"个");
System.out.println("小写字母有"+small+"个");
System.out.println("非字母有"+blank+"个");
}
}

实验结果

学习总结

1.String类的常用方法的使用

2.继承知识点:只允许多层继承不能够多重继承,即一个子类只可以继承一个父类。

3.子类是不可以直接访问父类的私有成员的,但是子类可以调用父类的非私有方法,但是不能够直接调用父类的私有成员。

4.super的使用,与this的调用方法相同,不可同时使用,语句必须放在子类构造方法首行。

5.方法的重载与覆写的区别



6.final关键字,使用final声明的类不能够有子类,声明的方法也不会被子类所覆写,使用final声明的变量为常量,常量不可修改。

总结

首先,这周的题目难度是在我可接受范围内吧,自己本周也有花时间在Java作业上,再写题目的过程中还比较顺利,就第二道题目的时候有卡壳,后面有听到室友的讨论,他们帮我解决了问题。这种程度的题目我还比较可以写,再加上有些题目老师上课已经讲过。发现自己很大程度上还是停留在读代码的阶段,自己只能够写比较简单的代码。继续加油吧

实验报告&总结的更多相关文章

  1. 北京电子科技学院(BESTI)实验报告5

    北京电子科技学院(BESTI)实验报告5 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名) 郑凯杰.周恩德 学号:(按贡献大小排名) 20145314.20145217 ...

  2. 北京电子科技学院(BESTI)实验报告4

    北京电子科技学院(BESTI)实验报告4 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)周恩德 .郑凯杰 学号:(按贡献大小排名)20145217 .201453 指 ...

  3. 20145215&20145307信息安全系统设计基础实验报告

    20145215&20145307信息安全系统设计基础实验报告 PART1 一.实验原理 交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码.同一个体系结构可以运行不同的操作系统 ...

  4. 北京电子科技学院(BESTI)实验报告1

    北京电子科技学院(BESTI)实验报告1 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)郑凯杰 .周恩德 学号:(按贡献大小排名)20145314 .20145217 ...

  5. 北京电子科技学院(BESTI)实验报告3

    北京电子科技学院(BESTI)实验报告3 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)周恩德 .郑凯杰 学号:(按贡献大小排名)20145217 .201453 指 ...

  6. 20145205 《Java程序设计》实验报告五:Java网络编程及安全

    20145205 <Java程序设计>实验报告五:Java网络编程及安全 实验要求 1.掌握Socket程序的编写: 2.掌握密码技术的使用: 3.客户端中输入明文,利用DES算法加密,D ...

  7. 20145220&20145209&20145309信息安全系统设计基础实验报告(5)

    20145220&20145209&20145309信息安全系统设计基础实验报告(5) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132249 ...

  8. 20145220&20145209&20145309信息安全系统设计基础实验报告(3)

    20145220&20145209&20145309信息安全系统设计基础实验报告(3) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132243 ...

  9. 20145220&20145209&20145309信息安全系统设计基础实验报告(4)

    20145220&20145209&20145309信息安全系统设计基础实验报告(4) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132246 ...

  10. 20145220&20145209&20145309信息安全系统设计基础实验报告(2)

    20145220&20145209&20145309信息安全系统设计基础实验报告(2) 实验报告链接: http://www.cnblogs.com/zym0728/p/6083664 ...

随机推荐

  1. libVEX学习

    VEX IR是一种更加接近于compiler使用的中间语言/中间表示,它是不依赖于特定体系架构的. 1. Code Blocks code blocks是VEX处理代码的一个单元,使用IRSB结构体表 ...

  2. LeetCode刷题笔记-递归-反转二叉树

    题目描述: 翻转一棵二叉树. 解题思路: 1.对于二叉树,立马递归 2.先处理 根节点,不需改动 3.处根的左子树和右子树需要交换位置 4.递归处理左子树和右子树.步骤见1-3步 Java代码实现: ...

  3. shell /dev/null

    /dev/null表示空设备,这里就是把日志记录到空设备里,就是不记录日志,Null 是一特殊指标值(或是一种物件参照 reference)表示这个指标并不指向任何的物件. 是一个特殊的文件,写入到它 ...

  4. Spring Cloud配置中心高可用搭建

    本文通过config server连接git仓库来实现配置中心,除了git还可以使用svn或者系统本地目录都行. 引入依赖 <dependencies> <dependency> ...

  5. CentOS MySQL 5.7编译安装

    CentOS MySQL 5.7编译安装 MySQL 5.7 GA版本的发布,也就是说从现在开始5.7已经可以在生产环境中使用,有任何问题官方都将立刻修复. MySQL 5.7主要特性: 更好的性能: ...

  6. 备份一下我的.bash_aliases文件

    # 这是陈悦老师的课程练习目录 alias cdchen="cd /home/branches/Documents/chen" # 每次grep都显示出行号 alias grep= ...

  7. safari 调试iPhone web页面

    safari设置-打开Safari偏好者设置,选中“高级菜单”,在页面最下方看到“在菜单中显示开发菜单”的复选框,在复选框内打钩,这样设置完毕就能在Safari菜单中看到开发菜单了 iPhone 设置 ...

  8. CG-CTF web部分wp

    bin不动了,学学webWEB1,签到1f12,得到flag2,签到2给了输入窗口和密码,但输入后却显示错误,查看源码,发现对输入长度进行了限制,改下长度,得到flag3,md5 collision给 ...

  9. Mysql中(@i:=@i+1)的作用

    Oracle中有一个伪列rownum,可以在生成查询结果表的时候生成一组递增的序列号.MySQL中没有这个伪列,但是有时候要用,可以用如下方法模拟生成一列自增序号. (1)sql示例:select ( ...

  10. 前端学习(二)css样式笔记(笔记)

    background-image:url(img/xiaofeiji.jpg)背景图:url(图片路径):(背景图默认平铺) background-repeat:repeat-x/repeat-y/n ...