第五周课程总结&试验报告(三)
1.已知字符串:"this is a test of java".按要求执行以下操作:(要求源代码、结果截图。)
① 统计该字符串中字母s出现的次数。
实验代码
package 实验三;
public class 字符 {
public static void main(String args[]) {
String str1 = "this is a test of java";
int count=0;
for(int i=0;i<str1.length();i++) {
char a=str1.charAt(i);
if(a==\'s\') {
count++;
}
}
System.out.println("字母s出现的次数;"+count);
}
}
实验结果
② 统计该字符串中子串“is”出现的次数。
实验代码
package 实验三; public class 子串 { public static void main(String args[]) { String str2 = "this is a test of java"; int count=0; char a[]; a=str2.toCharArray(); for(int i=0;i<str2.length();i++) { if(a[i]==\'i\') { for(int j=0;j<str2.length();j++) if(a[j]==\'s\') { count++; break; } } } System.out.println("子串is出现的次数;"+count); } }
实验结果
③ 统计该字符串中单词“is”出现的次数。
实验代码
package 实验三;
public class 字符串 {
public static void main(String args[]) {
String str3 = "this is a test of java";
int count=0;
String z[];
z=str3.split(" ");
for(String a:z) {
if(a.equals("is")) {
count++;
}
}
System.out.println("单词is出现的次数:"+count);
}
}
实验结果
④ 实现该字符串的倒序输出。
实验代码
package 实验三; public class 倒序 { public static void main(String[] args) { String str = "this is a test of java"; char c[] = str.toCharArray(); for(int i = c.length-1;i>=0;i--) { System.out.print(c[i]); } } }
实验结果
2.请编写一个程序,使用下述算法加密或解密用户输入的英文字串。要求源代码、结果截图。
3.已知字符串“ddejidsEFALDFfnef2357 3ed”。输出字符串里的大写字母数,小写英文字母数,非英文字母数。
实验代码
package 实验三;
public class 字母 {
public static void main(String[] args) {
String str = "ddejidsEFALDFfnef2357 3ed";
int count1 = 0,count2 = 0,count3 = 0;
for(int i = 0;i<str.length();i++) {
if(Character.isUpperCase(str.charAt(i))) {
count1 ++;
}
else if(Character.isLowerCase(str.charAt(i))) {
count2++;
}
else {
count3++;
}
}
System.out.println("大写字母个数:"+count1+",小写字母个数:"+count2+",非英文字母个数:"+count3);
}
}
实验结果
学习总结
重载与覆写的区别
重载(Overloading):方法名称相同,参数的类型或个数不同;对权限没有要求;发生在一个类中;
覆写(Overriding):方法名称、参数的类型、返回值类型全部相同;被覆写的方法不能拥有更严格的权限;发生在继承类中;
final关键字:声明的类中不能有子类;声明的方法中不能被子类所覆盖;声明的变量为常量,不能被修改;
抽象类只需声明不需要实现且必须被子类继承,子类(如果不是抽象类)必须覆写抽象类中的全白抽象方法。