实验三 String类的应用
      
      实验目的
      
      掌握类String类的使用;
      
      学会使用JDK帮助文档;
     
     
     
      实验内容
      
      1.已知字符串:”this is a test of java”.按要求执行以下操作:(要求源代码、结果截图。)
     
     
     
      (1)统计该字符串中字母s出现的次数。
     
    
package Zuoye;
class Is {
    public static void main(String[] args) {
        String str = "this is a test of java";
        int sum=0;
        char c[]=str.toCharArray();
        for(int i=0;i<c.length;i++){
            if(c[i]=='s')
                sum++;         
         }
        System.out.println("s出现"+sum+"次");         
    }
}
      
    
     (
     
      2)统计该字符串中子串“is”出现的次数。
     
    
package Zuoye;
class Is {
    public static void main(String[] args) {
        String str = "this is a test of java";
                int sum=0;
                char[]a=str.toCharArray();
           for(int i=0;i<a.length;i++) {
                    if(a[i]=='i') {
                        if(a[i+1]=='s') 
                            sum++;
                          }
                  }
                System.out.println("字符is出现:"+sum+"次数");
             }
        }
      
    
     
      (3)统计该字符串中单词“is”出现的次数。
     
    
package Zuoye;
class Is {
    public static void main(String[] args) {
        String str = "this is a test of java";
                int sum=0;
                char a[]=str.toCharArray();
                for(int i=0;i<a.length;i++) {
                    if(a[i]==' '&&a[i+1]=='i'&&a[i+2]=='s'&&a[i+3]==' ') {
                            sum++;
                    }
                }
                System.out.println("单词is出现:"+sum+"次");
            }
        }
      
    
     
      (4)实现该字符串的倒序输出。
     
    
package Zuoye;
class Is {
    public static void main(String[] args) {
        String str = "this is a test of java";
        char a[] = str.toCharArray();
        for (int i=a.length-1;i>=0;i--) {
            System.out.print(a[i]);
        }
    }
}
      
    
     
      2.请编写一个程序,使用下述算法加密或解密用户输入的英文字串。要求源代码、结果截图。
     
    
package Zuoye;
import java.util.Scanner;
public class Is {
   public static void main(String[] args) {
               System.out.println("输入密码:");
               Scanner sc=new Scanner(System.in);
               String str = sc.next();
               char a[]= str.toCharArray();
               char b[] = new char[8] ;
               int n=0;
               for(int i = a.length-4;i<a.length;i++) {
                   b[n]=a[i];
                       n++;
               }
               for(int j=0;j<a.length-4;j++) {
                   b[n]=a[j];
                       n++;
               }
                  System.out.println("加密结果:");
                  System.out.println(b);
           }
}
      
    
     
      3.已知字符串“ddejidsEFALDFfnef2357 3ed”。输出字符串里的大写字母数,小写英文字母数,非英文字母数。
     
    
package Zuoye;
public class Is {
      public static void main(String[] args) {
        String str="ddejidsEFALDFfnef2357 3ed";
        int b=0,c=0,d=0;
        char a[]=str.toCharArray();
        for(int i=0;i<str.length();i++){
            if(a[i]>='A'&&a[i]<='Z') {
                b++;
            }
            else if(a[i]>='a'&&a[i]<='z') {
                c++;
            } else {
                d++;
            }
        }
        System.out.println("大写字母个数: "+b+",小写字母个数 "+c+",其他 "+d);
    }
}
     
     
     
      学习总结:
     
     
     
      (1)学习了继承的基本概念
      
      只允许多层继承不能多重继承,一个子类只能继承一个父类。
      
      继承的关键字extends;
      
      子类不能直接访问父类中的私有成员,可以通过setter,getter间接访问;
      
      (2)方法的复写
      
      访问权限大小关系 private<default<public;
      
      子类和父类声明相同的属性,子类中直接访问的时候采用“就近原则’;
      
      方法的重载:方法名称一样,参数的个数、类型和顺序不一样,发生在同一个类中;
      
      方法的覆写:方法名称一样,参数的类型一样,返回值类型一样,访问权限要大于或者等于父类方法的极限,发生在继承类中。
      
      (3)final,super关键字的使用;
      
      使用final声明的类不能有子类。
      
      使用final声明的方法不能被子类所覆写。
      
      使用final声明的变量即成为常量,不可被修改;final声明变量要求全部字母大写。
      
      super语句必须放在子类构造方法首行,与this不可同用。
      
      (4)抽象类的概念
      
      抽象类和抽象方法都要使用abstract关键字声明。
      
      (5)对象的多态性
      
      向上转型:子类—>父类(自动)
      
      向下转型:父类—>子类(强制)
      
      进行向下转型之前,必须首先发生对象向上转型。
     
    
转载于:https://www.cnblogs.com/1211li/p/11599378.html
 
