JAVA实验三及总结
JAVA第五周作业
Java实验报告三
第一题
1.已知字符串:"this is a test of java".按要求执行以下操作:(要求源代码、结果截图。)
(1)、统计该字符串中字母s出现的次数。
(2)、统计该字符串中子串“is”出现的次数。
(3)、统计该字符串中单词“is”出现的次数。
(4)、实现该字符串的倒序输出。
实验代码
(1)统计该字符串中字母s出现的次数。
public class Letter {
public static void main(String args[]) {
String str="This is a test of Java";
int count=0;
char c[]=str.toCharArray();
for(int i=0;i<c.length;i++) {
if(c[i]=='s') {
count++;
}
}
System.out.println(count);
}
}
运行结果
实验代码
(2)、统计该字符串中子串“is”出现的次数。
public class Character {
public static void main(String args[]) {
String str="This is a test of Java";
int count=0;
int i=0;
while(str.indexOf("is",i)!=-1) {
count++;
i=str.indexOf("is",i)+1;
}
System.out.println(count);
}
}
运行结果
实验代码
(3)、统计该字符串中单词“is”出现的次数。
public class Word {
public static void main(String args[]) {
String str="This is a test of Java";
int count=0;
int i=0;
while(str.indexOf(" is ",i)!=-1) {
count++;
i=str.indexOf(" is ",i)+1;
}
System.out.println(count);
}
}
运行结果
实验结果
(4)、实现该字符串的倒序输出。
public class ReverseString {
public static void reverseString (String str){
StringBuffer stringBuffer = new StringBuffer (str);
System.out.print(stringBuffer.reverse());
}
public static void main (String args[]){
String originalString="This is a test of Java";
reverseString (originalString);
}
}
(此代码借鉴于一位CSDN大佬的StringBuffer方法,在自己的理解下进行了更改并理解了代码。)
import javax.swing.JOptionPane;
public class ReverseString {
public static void reverseString (String str){
StringBuffer stringBuffer = new StringBuffer (str);
System.out.print(stringBuffer.reverse());
}
public static void main (String args[]){
String originalString;
originalString = JOptionPane.showInputDialog("Please input a String: ");
reverseString (originalString);
}
}
(此代码为CSDN上大佬的代码)
运行结果
2.请编写一个程序,使用下述算法加密或解密用户输入的英文字串。要求源代码、结果截图。
实验代码
import java.util.*;
public class Change {
public static void main(String args[]) {
Scanner jj = new Scanner(System.in);
String y = jj.next();
int i=0;
char c[]=y.toCharArray();
for(i=0;i<c.length;i++) {
c[i]=(char)(c[i]+3);
//System.out.println(c[i]);
}
String a = new String(c);
System.out.println(a);
}
}
室友的耐心教导,让我写出来了。
运行结果
3.已知字符串“ddejidsEFALDFfnef2357 3ed”。输出字符串里的大写字母数,小写英文字母数,非英文字母数。
实验代码
public class Classify {
public static void main(String args[]) {
String str = "ddejidsEFALDFfnef2357 3ed";
char c[] = str.toCharArray();
int count1 = 0, count2 = 0, count3 = 0;
for(int i = 0; i <= str.length() - 1;i++){
if(c[i] >= 'A' && c[i] <= 'Z'){
count1++;
}
else if(c[i] >= 'a' && c[i] <= 'z') {
count2++;
}
else {
count3++;
}
}
System.out.println("大写字母数:"+count1);
System.out.println("小写字母数:"+count2);
System.out.println("非英文字母数:"+count3);
}
}
运行结果
学习笔记
1、子类不能直接访问父类的私有属性,可通过get(),set()来间接访问。
2、super(),this()不可同时使用,因为其都必须放在首行,所以不可同时使用。
3、若删去super(),则无法使用父类的无参构造。
4、this(),super()不可出现在main方法中。
5、子类可扩大权限,不可缩小。
学习心得
好好学习,天天向上。