第四讲String课后作业

时间:2022-05-29 10:16:34

课后作业一:子串加密

1,设计思想

(1)输入一个字符串

(2)通过toCharArray()的方法将字符串转换成字符数组

(3)新建一个字符数组用来存储修改后的字符数组

2,程序流程图

 第四讲String课后作业

 

3,源代

package 子串加密;
import java.util.Scanner;
public class Secret {
public static void main(String[] args){
Scanner input
= new Scanner(System.in);
System.out.println(
"请输入要加密的英文子串:");
String a
=input.nextLine();
char c[]=a.toCharArray(); //将输入的字符串转化成字符数组
System.out.println("加密中……");
for(int i=0;i<1000000;i++)
{

}
char[] passWord=new char[10];
for(int i=0;i<c.length;i++){
passWord[i]
=(char) (c[i]+3);
if((c[i]>=88&&c[i]<=90)||c[i]>=118&&c[i]<=122)passWord[i]=(char)(c[i]+3-26);//将字符数组加密
}
System.out.println(
"正确的密码为:");
System.out.println(passWord);

}

}

 

4,结果截图

 第四讲String课后作业

 

课后作业二:

1String.equals()方法

可以用来比较两个字符串内容是否相等,即使对象或地址不同也能比较

2,整理String类的Length()charAt()getChars()replace()toUpperCase()toLowerCase()trim()toCharArray()使用说明、阅读笔记

Length():获取字串长度

charAt():获取指定位置的字符

getChars():获取从指定位置起的子串复制到字符数组中(它有四个参数,在示例中有介绍)

replace():子串替换

toUpperCase()toLowerCase():大小写转换

trim():去除头尾空格:

toCharArray():将字符串对象转换为字符数组

3,运行StringPool.java查看输出结果。如何解释这样的输出结果?从中你能总结出什么?

True

True

False

相同地址的字符串可以比较,用new相当于新创建了一个对象,开辟了新的地址,因此,字符串不能直接比较。

4第四讲String课后作业

 

为什么会有上述的输出结果?从中你又能总结出什么?

(1)地址相同,字符串相同

(2)地址相同,字符串不相同

(3)类型不同,一个是字符串变量,一个是常量

(4)equals()方法直接比较字符串内容是否相同

5String类的方法可以连续调用

String str="abc";

String result=str.trim().toUpperCase().concat("defg");

请阅读JDKString类上述方法的源码,模仿其编程方式,编写一个MyCounter类,它的方法也支持上述的“级联”调用特性

Class MyCounter{

MyCounter counter1=new MyCounter(1);

MyCounter counter2=counter1.increase(100).decrease(2).increase(3);

 

}