Java编程入门与应用 P120——成长任务1:对字符串的各种操作

Java编程入门与应用 P120——成长任务1:对字符串的各种操作

  • 本次任务要求读者根据本章所介绍的字符串处理函数完成,假设有两个字符串str1和str2,他们的定义如下:
  • String str1 = “Persistence can produce a miracle! Unfortunately,” + “very few people can persist of Success is Persistence1”;
  • String str2 = “The Secret of Success is Persistence!”;
  • 通过编程,完成如下操作:
  • 1、把str1复制到str2,并输出
  • 2、把str1的第5~10个字符附加到str2的尾部
  • 3、提取str1中的最后10个字符,并输出
  • 4、比较str1的前5个字符和str2的后5个字符
/**
 * Java编程入门与应用 P120——成长任务1:对字符串的各种操作
 * 本次任务要求读者根据本章所介绍的字符串处理函数完成,假设有两个字符串str1和str2,他们的定义如下:
 *
 * String str1 = "Persistence can produce a miracle! Unfortunately," + "very few people can persist of Success is Persistence1";
 * String str2 = "The Secret of Success is Persistence!";
 *
 * 通过编程,完成如下操作:
 * 1、把str1复制到str2,并输出
 * 2、把str1的第5~10个字符附加到str2的尾部
 * 3、提取str1中的最后10个字符,并输出
 * 4、比较str1的前5个字符和str2的后5个字符
 */

public class use_string {
    public static void main(String[] args) {
        //定义str1、str2
        String str1 = "Persistence can produce a miracle! Unfortunately," + "very few people can persist of Success is Persistence1";
        String str2 = "The Secret of Success is Persistence!";

        //将str1复制到str2
        System.out.println("将str1复制到str2后结果为:" + str2.concat(str1));

        /*
        将str1的第5~10个字符附加到str2的尾部
        (因为取子串是按照下标开始的,下标从0开始计数,所以第5位元素的下标为5 - 1,而终止位在substring里,终止位置的元素不包括,所以依旧是10)
         */
        System.out.println("将str1的第5~10个字符附加到str2的尾部的结果为:" + str2.concat(str1.substring(5 - 1,10)));

        //提取str1中的最后10个字符,并输出
        System.out.println("提取str1中的最后10个字符的结果为:" + str1.substring(str1.length() - 10, str1.length()));

        //比较str1的前5个字符和str2的后5个字符,并输出
        System.out.println(str1.substring(0,4).equals(str2.substring(str2.length() - 5, str2.length())) ?
                "str1的前5个字符和str2的后5个字符相同!" : "str1的前5个字符和str2的后5个字符不相同!");
    }
}

结果:

将str1复制到str2后结果为:The Secret of Success is Persistence!Persistence can produce a miracle! Unfortunately,very few people can persist of Success is Persistence1
将str1的第5~10个字符附加到str2的尾部的结果为:The Secret of Success is Persistence!istenc
提取str1中的最后10个字符的结果为:rsistence1
str1的前5个字符和str2的后5个字符不相同!

进程已结束,退出代码为 0

本程序的输出是嵌套的,仅举例说明一次:
例如:

 //提取str1中的最后10个字符,并输出
        System.out.println("提取str1中的最后10个字符的结果为:" + str1.substring(str1.length() - 10, str1.length()));

其实我相信前面都知道,标准输出的套路,主要是“+”后面的一大堆就有点吃力了,其实一步步分析下来还是很简单的:

 str1.substring(str1.length() - 10, str1.length())

str1.substring(x,y)的意思是在获取第x索引位往后依次索引到第y个索引位的子串。所以,str1.length() - 10代表str1这个字符串的总长度 - 10到达str1的最后10个元素的位置,一直索引到最后也就是 str1.length()

然后: str1.substring(str1.length() - 10, str1.length())的结果就是最后10个字符啦,输出就好了。

感谢观看

再次感谢~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值