第五周学习总结&实验报告三

实验报告:

实验一已知字符串:"this is a test of java".按要求执行以下操作:

1:统计该字符串中字母s出现的次数

实验代码:

package Java11;

public class TZQD {

		        public static void main(String[] args) {
		        String r = "this is a test of java";
		        int sum = 0;
		        char[] c = r.toCharArray();
		        for (int i = 0; i < c.length; i++) {
		        if (c[i] == 's') {
		        sum++;
		    }}
		        System.out.println("S的个数为"+sum);

}

}

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

实验代码:

package Java11;

public class TZQD {

	 public static void main(String[] args) {
	        String c = "this is a test of java";
	        int sun = 0;
	        char[] r = c.toCharArray();
	        for (int i = 0; i < r.length; i++) {
	        if (r[i] == 'i' && r[i + 1] == 's') {
	        sun++;
	        }
	        }
	        System.out.println("is的个数为"+sun);
	    }

	}

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

实验代码:

package Java11;

public class TZQD {

	 public static void main(String[] args) {
		    String r = "this is a test java";
	        String t[] = r.split(" ");
	        int sum = 0;
	        for (int i = 0; i < t.length; i++) {
	         if (t[i].equals("is")) {
	         sum++;
	            }
	        }
	        System.out.println("is的个数为"+sum);

	    }
	}

4:实现this is the text of java 倒序输出。

实验代码:

package Java11;

public class TZQD {

	 public static void main(String[] args) {
		 String c = "this is a test of java";
	        int i;
	        
	        char[] r = c.toCharArray();
	         
	        for (i = r.length-1; i >= 0; i--) {
	            System.out.print(r[i]);
	        }

	    }

	}

实验二:

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

实验代码:

package Java11;
import java.util.*;
public class TZQD {
	 public static void main(String[] args) {
		Scanner sc =new Scanner(System.in);
		String str=sc.nextLine();
		char c[] = str.toCharArray();
		char b;
		for(int i=0;i<c.length;i++) {
			b=(char)(c[i]+3);
			System.out.print(""+b);
     }
 }
}


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

实验代码:


public static void main(String[] args) {
        String b="ddejidsEFALDFfnef2357 3ed";
        int big=0,small=0,another=0;
        char[] c=b.toCharArray();
        for(int i=0;i<b.length();i++) {
            if('a'<=c[i]&&c[i]<='z') {
                small++;
            }
            else if('A'<=c[i]&&c[i]<'Z') {
                big++;
            }
            else if('1'<=c[i]&&c[i]<='9'){
                another++;
            }
            
        }
        System.out.println("大写字母数:"+big);
        System.out.println("小写字母数:"+small);
        System.out.println("非字母数:"+another);
    }
}

学习总结:

1.构造方法可以为类中的属性初始化,构造方法与类名称相同,无返回值类型声明,在类中没有明确地定义构造方法,

则会自动生成一个无参数的随机构造方法,在一个类中的构造方法可以重载,但是每个类都至少有一个构造方法。

2.String类在Java中较特殊,String使用直接赋值的方式或者通过构造方法进行实例化。

在String中比较内容时使用equals方法,而“==”比较的只是两个字符串的地址值。字符串的内容一旦声明则不可改变。

3.在Java中使用this关键字可以表示当前的对象,通过“this.属性”可以调用本类中的属性,

通过“this.方法()”可以调用本类中的其他方法,通过this()调用本类的构造方法。

4.对象数组的使用要分为声明数组和为数组开辟空间,开辟空间后数组中的每个元素的内容都是null。在Java中使用extends关键字完成类的继承关系

5.访问限制:子类是不能直接访问父类中的私有成员的,但是子类可以调用父类中的非私有方法

6.子类对象实例化过程:子类对象在实例化之前必须首先调用父类中的构造方法之后再调用子类自己的构造方法。

7.方法的覆写:在继承的关系中也存在着方法覆写的概念,即在子类中定义与父类中同名的方法。

方法覆写时必须考虑到权限,被子类覆写的方法不能拥有比父类方法更加严格的访问权限。

8.final:使用final声明的类不能有子类;使用final声明的方法不能被子类所覆写;使用final声明的变量及成为常量;

posted on 2019-09-27 15:28  Ttzp  阅读(247)  评论(2编辑  收藏  举报

导航