how2j.cn

本视频是解读性视频,所以希望您已经看过了本知识点的内容,并且编写了相应的代码之后,带着疑问来观看,这样收获才多。 不建议一开始就观看视频



3分55秒
本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器



步骤 1 : 分配空间与赋值分步进行   
步骤 2 : 分配空间,同时赋值   
步骤 3 : 练习-数组反转   
步骤 4 : 答案-数组反转   

步骤 1 :

分配空间与赋值分步进行

edit
分配空间与赋值分步进行
public class HelloWorld { public static void main(String[] args) { int[] a = new int[5]; //分配了长度是5的数组,但是没有赋值 //没有赋值,那么就会使用默认值 //作为int类型的数组,默认值是0 System.out.println(a[0]); //进行赋值 a[0] = 100; a[1] = 101; a[2] = 103; a[3] = 120; a[4] = 140; } }
public class HelloWorld {
	public static void main(String[] args) {
		int[] a = new int[5]; //分配了长度是5的数组,但是没有赋值
		
		//没有赋值,那么就会使用默认值
		//作为int类型的数组,默认值是0
		System.out.println(a[0]);
		
		//进行赋值
	
		a[0] = 100;
		a[1] = 101;
		a[2] = 103;
		a[3] = 120;
		a[4] = 140;
	}
}
步骤 2 :

分配空间,同时赋值

edit
分配空间,同时赋值
public class HelloWorld { public static void main(String[] args) { //写法一: 分配空间同时赋值 int[] a = new int[]{100,102,444,836,3236}; //写法二: 省略了new int[],效果一样 int[] b = {100,102,444,836,3236}; //写法三:同时分配空间,和指定内容 //在这个例子里,长度是3,内容是5个,产生矛盾了 //所以如果指定了数组的内容,就不能同时设置数组的长度 int[] c = new int[3]{100,102,444,836,3236}; } }
public class HelloWorld {
	public static void main(String[] args) {
		//写法一: 分配空间同时赋值
		int[] a = new int[]{100,102,444,836,3236};

		//写法二: 省略了new int[],效果一样
		int[] b = {100,102,444,836,3236};
		
		//写法三:同时分配空间,和指定内容
		//在这个例子里,长度是3,内容是5个,产生矛盾了
		//所以如果指定了数组的内容,就不能同时设置数组的长度
		int[] c = new int[3]{100,102,444,836,3236};
		
	}
}
步骤 3 :

练习-数组反转

edit  姿势不对,事倍功半! 点击查看做练习的正确姿势
首先创建一个长度是5的数组,并填充随机数。 (向数组填充随机数的办法,参考这里)

使用for循环或者while循环,对这个数组实现反转效果
步骤 4 :

答案-数组反转

edit
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
查看本答案会花费4个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
查看本答案会花费4个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
账号未激活 账号未激活,功能受限。 请点击激活
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

6分6秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器


public class HelloWorld { public static void main(String[] args) { int[] a = new int[5]; a[0] = (int) (Math.random() * 100); a[1] = (int) (Math.random() * 100); a[2] = (int) (Math.random() * 100); a[3] = (int) (Math.random() * 100); a[4] = (int) (Math.random() * 100); System.out.println("数组中各个值是:"); for (int i = 0; i < a.length; i++) System.out.print(a[i] + " "); /*思路一: 使用临时数组*/ System.out.println(); //准备临时数组 int[] temp = new int[a.length]; //把原数组的内容复制给临时数组 for (int i = 0; i < temp.length; i++) { temp[i] = a[i]; } System.out.println("临时数组中的各个值是:"); for (int i = 0; i < temp.length; i++) System.out.print(temp[i] + " "); System.out.println(); //反转的做法是把临时数组的数据,挨个 倒 放入 原数组中 for (int i = 0; i < temp.length; i++) { a[i] = temp[temp.length-1-i]; } System.out.println("反转后的数组中各个值是:"); for (int i = 0; i < a.length; i++) System.out.print(a[i] + " "); System.out.println(); /*思路二: 进行首尾调换*/ for (int i = 0; i < a.length/2; i++) { int middle = a[a.length-i-1]; a[a.length-i-1] = a[i]; a[i] = middle; } System.out.println("再次反转后的数组中各个值是:"); for (int i = 0; i < a.length; i++) { System.out.print(a[i] + " "); } System.out.println(); } }


HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。


问答区域    
2023-09-19 看一下我的反转
279844782abc




从下标4开始
public class AlterArr {
    public static void main(String[] args) {
        int[] a = new int[5];
        //  int[] c = new int[3]{100,102,444}; 同时分配空间,和指定内容
        a[0] = (int) (Math.random() * 100);
        a[1] = (int) (Math.random() * 100);
        a[2] = (int) (Math.random() * 100);
        a[3] = (int) (Math.random() * 100);
        a[4] = (int) (Math.random() * 100);
        System.out.println("数组中的各个随机数是:");
        for (int i = 0; i < a.length; i++)
            System.out.println(a[i]);

        int[] b = new int[5];
        int j =4;
        System.out.println("数组中反转的各个随机数是:");
        outloop:
        for (int i = 0; i < a.length; i++) {
            b[j] = a[i];
            j--;
            if (j < 0)
                break outloop;
        }

        for (int i = 0; i < b.length; i++)
            System.out.println(b[i]);

    }
}

							


1 个答案

后山人
答案时间:2023-10-07
反转前 44 46 81 283 248 反转后 248 283 81 46 44



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2023-08-16 数组反转
12345yida




使用常规方法
void reversal() {
        int[] arr = new int[5];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = (int) (Math.random() * 100);
            System.out.print(arr[i] + " ");
        }

        int length = arr.length;
        for (int i = 0; i < length / 2; i++) {
            int temp = arr[i];
            arr[i] = arr[length - 1 - i];
            arr[length - 1 - i] = temp;
        }

        System.out.println();

        for (int a : arr) {
            System.out.print(a + " ");
        }
    }

							


1 个答案

Syk159357666
答案时间:2023-11-22



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2023-03-23 我写的数组翻转
2023-03-21 写了三种反转数组的方法
2022-11-07 输出是乱码?


提问太多,页面渲染太慢,为了加快渲染速度,本页最多只显示几条提问。还有 134 条以前的提问,请 点击查看

提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
关于 JAVA 基础-数组-初始化数组 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 578362961
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: https://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图