实验报告三

实验三 String类的应用

实验目的
.掌握类String类的使用;
.学会使用JDK帮助文档;
.实验内容
一.已知字符串:"this is a test of java".按要求执行以下操作:(要求源代码、结果截图。)
Test1
--代码

package demo1;
public class Test1 {
	public static void main(String[] args) {
		String s = "this is a test of java";
		int count=0;
		for(int i=0;i<s.length();i++) {
			char c=s.charAt(i);
			if(c=='s') {
			count++;
			}
		}
         System.out.println("s出现次数" +count);
}
}

--结果截图

Test2
代码

package demo1;
public class Test2 {
	public static void main(String[] args) {
		String s = "this is a test of java";
		int count= 0;
		for(int i=1;i<s.length();i++) {
			char c=s.charAt(i-1);
			char c1=s.charAt(i);
			if(c=='i'&&c1=='s') {
				count++;
			}
		}
		System.out.println("字符串中子串is出现的次数" +count);
	}
}

--结果截图

Test3
--代码

package demo1;
public class Test3 {
	public static void main(String[] args) {
		String str = "this is a test of java";
		String s[] =str.split(" ");
		int count= 0;
			for(int i=0;i<s.length;i++) {
				if(s[i].equals("is")) {
					count++;
		}	
		}
		System.out.println("单词is出现次数" +count);
}
}


--结果截图

Test4
--代码

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

	    }

}

--结果截图

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

--代码

import java.util.Scanner;
public class Test52 {
    
    static Scanner scanner = new Scanner(System.in);
    public static void main(String[] args) {
        StringBuilder s = new StringBuilder();
        String s2 = " ";
        String s1 = scanner.next();
        for(int i = 0 ; i < s1.length() ; i++) {
            int c = s1.charAt(i);
            if(c>=65 && c<=90) {
                if(c==88) {
                    c = 65;
                }else if(c==89) {
                    c = 66;
                }else if(c==90) {
                    c = 67;
                }else {
                    c+=3;
                }
                s2 = String.valueOf(s.append((char)c));
            }else
            if(c>=97 && c<=122) {
                if(c==120) {
                    c = 97;
                }else if(c==121) {
                    c = 98;
                }else if(c==122) {
                    c = 99;
                }else {
                    c+=3;
                }
                s2 = String.valueOf(s.append((char)c));
            }
        }
        System.out.println("加密前 "+s1);
        System.out.println("加密后 "+s);
    }

}


该题我想了很久一直做不出来,参考了班上同学的代码,并且我向他请教了该题的做法与思想,只要要运用ASCII值得使用,还有就是Scanner和append方法的使用。

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

package demo1;
public class Test5 {
		private static void reverseString1(String str) {
			String s = "this is a test of java";
			char[] chr = str.toCharArray();
			for (int i = chr.length-1 ; i >= 0; i--) {
				System.out.print(chr[i]);
			}
			System.out.println("char[]");
			}
}

--结果截图

第五周学习总结
1.学习了对象的继承和多态,以及string类的加深学习。
2.string类中的一些常用的操作方法非常使用,比如可以将字符串转换成数组,char[] up = str.tocharArray(); 将字符串变成大写或小写字母,Uppercase()Lowercase()等方法。
3.使用this调用构造方法,放在首行,不能循环调用。

原文地址:https://www.cnblogs.com/zuoshuai/p/11593586.html