第五周课程总结&试验报告(三)
实验三String 类的应用一、实验目的 源代码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关键字来实现继承 作用: 子类对象实例化过程先调用父类中的构造方法。super()表示子类可以直接使用父类中的无参构造。 方法的重载与覆写的区别方法重载(Overloading): 方法覆写(Overriding): Java基本方法命名1.方法命名为【修饰符1,2,3】 返回值类型 方法名 (形式参数);并且是有return作为结束 2.无返回值的时候 必须要用指定为void 3.实参的数量,数值,及数据类型和次序,必须和形参的一致; 4.java进行方法调用的时候,数据传递是值传递,传递的都是数据的副本 5.基本数据类型传递的是值的copy值 6.引用数据类型传递的是对象引用的copy值,所指的是同一个对象 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |