第三次Java实验报告

Java实验报告

?

班级 计科二班 学号20188437 姓名 何磊

完成时间 2019/9/22

评分等级

实验三 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.(一)实验代码

package 第三次java实验;

?

public class Thisisatestofjava {

????public static void main(String[] args) {

????????// Todo Auto-generated method stub

????????int count=0;

????????String s="this is a test of java";

????????System.out.println((","+s+",").split("s").length-1);

????????//方法一:split函数对字符串s"s"位置进行拆分,然后通过.length得到拆分后的字符串的个数,减1得到"s"出现的次数

????????char c[]=s.tochararray();

????????for(char e:c){

????????????if(e==‘s‘){

????????????????count++;

????????????}

????????}

????????//方法二:用tochararray函数将字符串s变成字符数组,foreach循环对字符数组进行遍历,判断并计数

????????System.out.println((",").split("is").length-1); //同上方法

????????System.out.println((",").split(" is ").length-1); //同上

????????for (int i=c.length-1;i>= 0;i--) {

????????????System.out.print(c[i]);

????????}

????????//利用字符数组下标递减输出

????????StringBuffer buffer = new StringBuffer(s);

????????System.out.println("\n"+buffer.reverse());

????????//定义成一个StringBuffer类,用StringBuffer类中的reverse()方法直接倒序字符串。

}

}

分享图片

(二)运行结果

分享图片

2.(一)实验代码

package 第三次java实验;

?

import java.util.Scanner;

?

public class 加密解密 {

?

????public static void main(String[] args) {

????????// Todo Auto-generated method stub

????????Scanner input=new Scanner(System.in);

????????String s=input.next(); //输入一个字符串

????????char c[]=s.tochararray(); //将字符串拆分为单个字符

????????for(int i=0;i<s.length();i++){

????????????c[i]=(char)(c[i]+3);

????????}

????????//将每个字符向后移动三位

????????System.out.print(String.valueOf(c)); //String.valueOf()将加密后的字符连接起来输出

????}

}

?

分享图片

(二)运行结果

分享图片

3.(一)实验代码

package 第三次java实验;

?

public class 统计字符串 {

?

????public static void main(String[] args) {

????????// Todo Auto-generated method stub

????????int ABC=0,abc=0,other=0;

????????String s="ddejidsEFALDFfnef2357 3ed";

????????char c[]=s.tochararray();

????????for(char e:c){

????????????if(e>=‘A‘&&e<=‘Z‘){

????????????????ABC++;

????????????}

????????????else if(e>=‘a‘&&e<=‘z‘){

????????????????abc++;

????????????}

????????????else{

????????????????if(e!=‘ ‘){

????????????????????other++;

????????????????}

????????????}

????????}

????????System.out.print("大写字母数:"+ABC+"\n小写字母数:"+abc+"\n英文字母数:"+other);

????}

?

}

分享图片

(二)运行结果

分享图片

  1. 总结:

本次实验主要内容为字符串的处理,要学会善于利用String类和StringBuffer类中的方法

同一问题有多种方法可以解决,举一反三就能学到更多。

本周学习了Java常用类库中的StringBuffer类以及package包的引用等,主要是一些概念类的知识,需要课余加以记忆巩固。

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...