老师 能帮我详细说明代码啥意思吗 没看明白

老师 能帮我详细说明代码啥意思吗 没看明白

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class SameName {
    public static void main(String[] args) {
        String str[] = {"张三""李四""王五""赵六""周七""王哲""白浩""贾蓉""慕容阿三""黄蓉"};
        System.out.println("最后一个字相同的名字有");
        for (int i = 0; i < str.length; i++) {
            for (int j = i + 1; j < str.length; j++) {
                int len = str[i].length();
                char endChar = str[i].charAt(len - 1);
                String strEC = endChar + "";
                if (str[j].endsWith(strEC)) {
                    System.out.println(str[i] + "和" + str[j]);
                }
            }
        }
    }
}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小黑 2022-07-22 16:02:06

同学你好,外层循环用于指定数组中当前的元素,内层循环是用于比较数组中当前元素以后的元素的最后一个字是否和当前元素最后一个字相同,如果相同则打印输出当前元素和当前元素最后一个字相同的元素。

同学代码中

1.第8行,表示数组下标为i的元素的长度;

2.第9行,表示将数组中最后一个字提取出来,并存放到endChar变量中;

3. 第10行,是将char类型的endChar转换为String类型;

4. 第11行,是将下标为j的数据的最后一个字和变量strEC比较是否相同;

5. 第12行,是输出下标为i和下标为j的数据

祝学习愉快!

  • 提问者 丧杰努力 #1

    听了老师的解释  还是不太明白

    2022-07-23 22:46:44
  • 好帮手慕小尤 回复 提问者 丧杰努力 #2

    同学你好,同学具体哪里不明白呐,可以详细描述一下,便于老师定位问题,与同学进行解答。

    祝学习愉快!

    2022-07-24 10:38:01
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师
插入代码