实验三 String类的应用
实验目的:
(1)掌握类String类的使用:
(2)学会使用JDK帮助文档;
实验内容:
1.已知字符串:"this is a test of java".按要求执行以下操作:
(1)统计该字符串中字母s出现的次数。
(2)统计该字符串中子串“is”出现的次数。
(3)统计该字符串中单词“is”出现的次数。
(4)实现该字符串的倒序输出。
实验代码:
package project2;
public class test1 {
public static void main(String[] args) {
String s = "this is a test of java";
int n = s.indexOf("s",3);
System.out.println("统计该字符串中字母s出现的次数:"+n);
int a = s.indexOf("is");
System.out.println("统计该字符串中子串“is”出现的次数:"+a);
int b = (s.split(" is ")).length - 1;
System.out.println("单词is出现的次数:"+b);
StringBuffer r = new StringBuffer ("this is a test of java");
System.out.println(r.reverse());
}
}
代码截图:
2.请编写一个程序,使用下述算法加密或解密用户输入的英文字串。要求源代码、结果截图。
实验代码:
package project2;
import java.util.Scanner;
public class test2 {
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner s = new Scanner(System.in);
System.out.println("输入字符串:");
String r = s.nextLine();
char t[] = new char[r.length()];
t=r.toCharArray();
int i;
for (i=0;i<t.length;i++) {
t[i]=(char)(t[i]+3);
}
String c=" ";
for (i=0;i<r.length();i++) {
c=c+t[i];
}
System.out.println("改变后的字符串:
"+c);
}
}
代码截图:
3.已知字符串“ddejidsEFALDFfnef2357 3ed”。输出字符串里的大写字母数,小写英文字母数,非英文字母数。
实验代码:
package project2;
public class test3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String s = "ddejidsEFALDFfnef2357 3ed";
int small=0,big=0,i,not=0;
for (i=0;i<s.length();i++) {
char c=s.charAt(i);
if (Character.isLowerCase(c)) {
small++;
}
else if (Character.isUpperCase(c)){
big++;
}
}
not=s.length()-small-big;
System.out.println("大写字母个数:"+big);
System.out.println("小写字母个数:"+small);
System.out.println("非英语字母个数:"+not);
}
}
代码截图:
课程总结:
本周学习了Java面向对象程序设计(高级篇),虽然所学知识与实验报告(三)没太大关系,但是对完成这次的实验并没有太大的问题。本周主要学习了继承的应用、final关键字、包装类等面向对象的方法,在继承这方面上,主要要区分方法的重载与覆写的区别;在使用final关键字时不能被继承。本周学习情况还不错,在之后的学习中继续保持。