• 第五周课程总结&试验报告(三)


    实验三String 类的应用

    一、实验目的
    (1)掌 握类String类的使用;
    (2)学会使用JDK帮助文档;
    二、实验内容
    1.已知字符串: "this is a test of java" .按要求执行以下操作: ( 要求源代码、结果截图。)
    1.统计该字符串中字母s出现的次数。

    源代码

    public class Test{
    	public static void main(String[] args) {
    		String str = "this is a test of java";
    		int count = 0,i = 0;
    		while(str.indexOf("s",i) != -1) {
    			count++;
    			i = str.indexOf("s",i)+1;
    		}
    		System.out.println(count);
    	}
    }
    

    运行截图

    方法:用indexOf从i+1个位置开始查找单个字符“s”,找到计数,i++,没找到就输出-1.

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

    源代码

    public class Test{
    	public static void main(String[] args) {
    		String str = "this is a test of java";
    		int count = 0,i = 0;
    		while(str.indexOf("is",i) != -1) {
    			count++;
    			i = str.indexOf("is",i)+1;
    		}
    		System.out.println(count);
    	}
    }
    

    运行截图

    方法:同上,查找字符串“is”.

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

    源代码

    public class Test{
    	public static void main(String[] args) {
    		String str = "this is a test of java";
    		int count = 0;
    		String[] s = str.split(" ");
    		for(String e:s) {
    			if(e.equals("is")) {
    				count++;
    			}
    		}
    		
    		System.out.println(count);
    	}
    }
    

    运行截图

    方法:使用split()方法按空格进行将字符串拆分,然后运用三目运算符,如果找到,就计数。

    4.实现该字符串的倒序输出。

    源代码

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

    运行截图

    方法:使用toCharArray()方法将字符串变为字符数组,然后for循环倒序输出。

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

    源代码

    package hello;
    
    public class Test{
    	
    	//反向遍历字符串
    public static String reChange(String from) {
    	char[] froms = from.toCharArray();
    	int length = froms.length;
    	for(int i = 0;i < length/2;i++) {
    		char temp = froms[i];
    		froms[i] = froms[length-1-i];
    		froms[length-1-i] = temp;
    	}
    	return String.copyValueOf(froms);
    }
    
        //循环右移index位字符串
    public static String rightMoveIndex(String from,int index) {
    	from = reChange(from);
    	String first = from.substring(0,index);//先截取0~index个位置的内容
    	String second = from.substring(index);//从index+1的位置开始截取
        first = reChange(first);
        second = reChange(second);
        from = first + second;
        return from;
        }
    
    public static void main(String[] args) {
    	String rightString = "123456";
    	System.out.println("右移3位字符串结果:"+rightMoveIndex(rightString,3));
        }
    }
    

    运行截图

    方法:第一步:先String一个reChange()方法,设置参数from,使用toCharArray()方法将字符串变为字符数组,运动for循环将字符串倒序保存在字符数组中,再用ValueOf()将反向的字符数组变成字符串,这里使用copyValueOf是因为参数(String from)必须要有返回值。第二步:使用substring()截取字符串,循环右移index位字符串。第三步:输入输出。

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

    源代码

    public class Test{
    	public static void main(String[] args) {
    		String str = "ddejidsEFALDFfnef2357 3ed";
    		int count1 = 0,count2 = 0,count3 = 0;
    		for(int i = 0;i<str.length();i++) {
    			if(Character.isUpperCase(str.charAt(i))) {
    				count1 ++;
    			}
    			else if(Character.isLowerCase(str.charAt(i))) {
    				count2++;
    			}
    			else {
    				count3++;
    			}
    		}	
    			System.out.println("大写字母个数:"+count1+",小写字母个数:"+count2+",非英文字母个数:"+count3);
    	}
    }
    
    

    运行截图

    方法:使用isUpperCase()、isLowerCase()和charAt()方法。

    学习总结

    类的继承

    格式:

    class 父类{ }                           //定义父类
    class 子类 extends 父类{ }     //使用extends关键字来实现继承
    

    作用:
    通过继承的功能可以直接把父类中的操作直接拿到子类当中使用,而且子类也可以定义自己的属性或方法。
    注意:
    1、一个子类只能继承一个父类。
    2、子类不可以直接访问父类中的私有操作,但是可以通过其他操作(setter或getter)间接访问父类中的私有操作。

    子类对象实例化过程

    先调用父类中的构造方法。super()表示子类可以直接使用父类中的无参构造。

    方法的重载与覆写的区别

    方法重载(Overloading):
    1.方法名称相同,参数的类型或个数不同
    2.方法重载对方法的权限没有要求
    3.方法重载发生在一个类中

    方法覆写(Overriding):
    1.方法名称、参数类型、返回值类型全部相同
    2.被覆写的方法不能拥有比父类中的方法更高的权限,也不能拥有private权限
    3.方法覆写发生在两个继承类中

    Java基本方法命名

    1.方法命名为【修饰符1,2,3】 返回值类型 方法名 (形式参数);并且是有return作为结束
    2.无返回值的时候 必须要用指定为void
    3.实参的数量,数值,及数据类型和次序,必须和形参的一致;
    4.java进行方法调用的时候,数据传递是值传递,传递的都是数据的副本
    5.基本数据类型传递的是值的copy值
    6.引用数据类型传递的是对象引用的copy值,所指的是同一个对象

  • 相关阅读:
    端口服务
    系统设计的主要原则是什么?
    Dynamics CRM2015 Custom Code Validation Tool工具的使用
    CONFIGURE ADFS 3.0 WITH SHAREPOINT 2013
    Sharepoint Solution Gallery Active Solution时激活按钮灰色不可用的解决方法
    Dynamics CRM 2015Online Update1 new feature之 插件跟踪日志
    Dynamics CRM2013/2015 Plugin注册工具Register New Assembly时无法看到注册按钮的解决办法
    Dynamics CRM 2015 站点地图公告配置实体显示名称的变更
    Dynamics CRM 2015 Online Update1 UI界面的更新变化
    SQL Server2012 AlwaysOn 无法将数据库联接到可用性组 针对主副本的连接未处于活动状态
  • 原文地址:https://www.cnblogs.com/clayLJX/p/11598751.html
Copyright © 2020-2023  润新知