第五周课程总结&试验报告(三)
2019-09-27 16:05 小小乌龟君 阅读(275) 评论(2) 编辑 收藏 举报学习总结
1.本周我们学习了继承的基本概念:子类与父类。子类通过extends来继承父类。在子类中可以用super()来调用父类的构造方法。在继承的父类的方法中可以对方法进行覆写。
2.super与this时一对冤家他们不能同时出现。在内容上也有很大不同。如super只能从父类中调用方法,而this实在子类没有时才调用父类。而且都要放在构造方法的首行。
3.final关键字是父类挡住子类继承的一道屏障,它可以让定义的类不被继承,而且使变量变成常量。
4.子类可以自动转化为父类,而父类要强制转化为子类。
已知字符串:"this is a test of java".按要求执行以下操作
统计该字符串中字母s出现的次数。
统计该字符串中子串“is”出现的次数。
统计该字符串中单词“is”出现的次数。
实现该字符串的倒序输出。
public class daoxu {
public static void main(String[] args) {
String s = "this is a test of java";
int x = (s.split("s")).length - 1;
System.out.println("字符串中字母s出现的次数" + x);
int y = (s.split("is")).length - 1;
System.out.println("字符串中子串“is”出现的次数" + y);
int z = (s.split(" is")).length - 1;
System.out.println("字符串中单词“is”出现的次数" + z);
StringBuffer str = new StringBuffer("this is a test of java");
System.out.println(str.reverse()); //使用了StringBuffer类中的reverse()方法
}
}
2.请编写一个程序,使用下述算法加密或解密用户输入的英文字串
import java. util.*;
public class jiami{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入要加密的英文字串");
String str = sc.nextLine();
char n;
String str1=new String();
for(int i=0;i<str.length();i++) {
n = str.charAt(i);
n = (char)(n+3); //字符后移3位
str1+=n;
}
System.out.println("加密后的子串是:\n"+str1);
}
}
3.已知字符串“ddejidsEFALDFfnef2357 3ed”。输出字符串里的大写字母数,小写英文字母数,非英文字母数。
public class daxiao {
public static void main(String[] args) {
int x,y,z;
x=y=z=0;
String s = "ddejidsEFALDFfnef2357 3ed";
char c[] = s.toCharArray();
for(int i=0;i< c.length;i++) {
if(c[i]>= 'a'&&c[i] <= 'z') {
x++;
}
else if(c[i] >= 'A'&&c[i]<='Z') {
y++;
}
else {
z++;
}
}
System.out.println("字符串里的大写英文字母数" +y);
System.out.println("字符串里的小写英文字母数" +x);
System.out.println("字符串里的非英文字母数" +z);
}
}
关于对第二题的修改
import java. util.*;
public class jiami2{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入要加密的英文字串");
String str = sc.nextLine();
int x,y;
String str1,str2;
x = str.length();
if(x>3) {
y = x-3;
str1 = str.substring(y);
str2 = str.substring(0,y);
System.out.println("加密后的子串是:\n"+str1+str2);
}
else {
char n;
String str3=new String();
for(int i=0;i<str.length();i++) {
n = str.charAt(i);
n = (char)(n+3); //字符后移3位
str3+=n;
}
System.out.println("加密后的子串是:\n"+str3);
}
}
}