A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

StrangeBoy

初级黑马

  • 黑马币:15

  • 帖子:5

  • 精华:0

© StrangeBoy 初级黑马   /  2019-6-26 21:06  /  1898 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

      进入黑马学习已经快半个月了,每天都能在视频和导师的讲解下把每个模块的内容学习两遍,课后每个同学都有两份左右的课堂笔记(一份是当天视频讲解的笔记,另外一份是结合视频讲解更加重点和包含课外扩展的笔记)去复习当天的内容,可以使自己充分的掌握每天所学习的内容。
      经过十几天的学习,目前自身感觉严重不足的部分在于for循环的循环嵌套使用,需要足够充分的逻辑思维能力去思考每一个环节的执行步骤,一但大脑卡壳了,的困在里面好久都出不来,自己总结了几个疑难杂症,分享给刚刚入门的小伙伴吧
//需求:随意定义一个数组 在控制台按照从大到小排列
public class Test03 {
    public static void main(String[] args) {
        //定义一个临时变量用于存放比较出来的较小值
        int tempNumber = 0;
        //定义一个数组
        int[] arr = {2, 4, 65, 3, 43, 654, 23, 543};
        //定义一个新的数组用来保存排序后的数组元素
        int[] arr2 = arr;
        //先使用for循环嵌套将数组进行遍历并进行元素之间的比较
        for (int i = 0; i < arr.length - 1; i++) {
            for (int j = i + 1; j < arr.length; j++) {
                //使用if语句判断元素之间的大小
                if (arr[i] < arr[j]) {
                    //较小的值使用临时变量保存
                    tempNumber = arr[i];
                    //将比较之后的数组按照从大到小调换位置
                    arr[i] = arr[j];
                    arr[j] = tempNumber;
                }
            }
        }
        System.out.print("[");
        //再次使用for循环将新的数组进行遍历然后打印在控制台
        for (int i = 0; i < arr2.length; i++) {
            System.out.print(arr2[i] + " ");
        }
        System.out.println("]");
    }
}
/*
    需求:
        已知一个数组 arr = {19, 28, 37, 46, 50}; 用程序实现把数组中的元素值交换,
        交换后的数组 arr = {50, 46, 37, 28, 19}; 并在控制台输出交换后的数组元素。

    思路:
        1:定义一个数组,用静态初始化完成数组元素的初始化
        2:循环遍历数组,这一次初始化语句定义两个索引变量,判断条件是开始索引小于等于结束索引
        3:变量交换
        4:遍历数组
*/
public class Test09 {
    public static void main(String[] args) {
        //定义一个数组,用静态初始化完成数组元素的初始化
        int[] arr = {19, 28, 37, 46, 50};
        //定义一个变量作为临时空间
        int temp= 0;
        //分别定义两个索引
        //将数组进行遍历
        for (int start= 0,end=arr.length-1;start<=end;start++,end--){
            temp = arr[start];
            arr[start]=arr[end];
            arr[end]=temp;
            if(arr[start]==arr[end]){
                break;
            }
        }
        for (int i=0;i<arr.length;i++){
            System.out.print(arr[i]+" ");

        }
    }
}

5 个回复

倒序浏览
奈斯
回复 使用道具 举报
加油~
回复 使用道具 举报
回复 使用道具 举报
你们的明天会更好~!
回复 使用道具 举报
奈斯,加油
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马