java#5(数组)

news2025/7/18 8:16:57

目录

数组

1.数组的完整格式:数据类型[] 数组名 = new 数据类型[]{元素1,元素2......};

2.数组的简化格式:数据类型[] 数组名 = {元素1,元素2......};

3.数组的地址​编辑

4.数组的索引(下标,角标)

 5.length的使用(表示数组的长度:有几个元素)

6.数组动态初始化:初始化时指定数组长度,由系统为数组分配初始值

7.动态初始化和静态初始化的区别:

​编辑(上图来自黑马程序员的视频)

8.数组的常见操作:

(1)求最值

(2)求和并统计数据

​编辑 3.交换数据

 4.打乱数据

二维数组

1.二维数组的静态初始化

2.二维数组的动态初始化


数组

1.数组的完整格式:数据类型[] 数组名 = new 数据类型[]{元素1,元素2......};

2.数组的简化格式:数据类型[] 数组名 = {元素1,元素2......};

3.数组的地址

[ --->表示元素是数组

I---->表示元素是整形

D--->表示元素是双精度浮点型

String---->表示元素是字符串型

 @---->表示一个间隔符号?(固定格式)

4eec7777--->才是真正的地址值

4.数组的索引(下标,角标)

索引从0开始

例如:int[ ] arr = {1,2,3};

 5.length的使用(表示数组的长度:有几个元素)

6.数组动态初始化:初始化时指定数组长度,由系统为数组分配初始值

格式:数据类型[]数组名 = new 数据类型[数据长度];

例如:int[] arr = new int[5];

各类型数组默认初始化值:

整数类型:0

小数类型:0.0

字符类型:'/u0000'

布尔类型:false

引用数据类型:null

7.动态初始化和静态初始化的区别:

(上图来自黑马程序员的视频)

8.数组的常见操作:

(1)求最值

(2)求和并统计数据

package Demo2;

import java.util.Random;

public class Demo2 {
    /**public static void main(String[] args) {
        int[] arr1 = {1,2,3,4,5,6};
        System.out.println(arr1);

        String[] arr2 = {"zhang","lisi","wang"};
        System.out.println(arr2);

        double[] arr3 = {1.23,2.34,3.45};
        System.out.println(arr3);

    }*/
    /*public static void main(String[] args) {
        int[] arr = {1,2,3};
        System.out.println(arr[0]);
        System.out.println(arr[1]);
        System.out.println(arr[2]);
        int [] arr1 = {1,2,3,4,5,6,7,8,4,32,12,1,2};
        System.out.println(arr1.length);
        for(int i =0;i <= arr1.length;i++) {
            System.out.println(arr1[i]);
        }
        int []arr = {12,4,6,24,12};
        int max = arr[1];
        for(int i = 0;i < arr.length;i++){
            if(arr[i] > max){
                max = arr[i];
            }
        }
        System.out.println("数组中的最大的数是"+max);
    }*/
    public static void main(String[] args) {
        int[] arr = new int[8];
        Random r = new Random();


        //求和
        int sum = 0;
        for (int i = 0; i < arr.length; i++) {
            int num = r.nextInt(100)+1;
            arr[i] = num;
            sum = sum + arr[i];
        }
        System.out.println("数组中所有数据的和为:"+sum);

        //求平均值
        int avg = sum / 8;
        System.out.println("数组中所有数据的平均数是:"+avg);

        //有多少个数比平均数小
        int cont = 0;
        for (int i = 0; i < arr.length; i++) {
            if(arr[i] < avg){
                cont++;
            }
        }
        System.out.println("数组中比平均数小的有"+cont+"个");

    }



}

 3.交换数据

package Demo2;

import java.util.Random;

public class Demo2 {
    //交换数据
    public static void main(String[] args) {
        int []arr = {1,2,3,4,5};
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+" ");
        }
        System.out.println("\n");
        for (int i = 0 , j = arr.length-1; i < j; i++,j--) {
            int temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
        }
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+" ");
        }
    }


}

 4.打乱数据

package Demo2;

import java.util.Random;

public class Demo2 {
    //打乱数据
    public static void main(String[] args) {
        int[] arr = {1,2,3,4,5};
        for (int i = 0; i < arr.length; i++) {
            Random r = new Random();
            //创建一个随机索引
            int a = r.nextInt(arr.length);
            //打乱数据
            int temp = arr[i];
            arr[i] = arr[a];
            arr[a] = temp;
        }
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+" ");
        }
    }


}

二维数组

1.二维数组的静态初始化

 完整格式:数据类型[][]数组名 = new 数据类型[][]{元素1,元素2}{元素1,元素2};

简化格式:数据类型[][]数组名 = {元素1,元素2}{元素1,元素2};

示范:int[ ][ ] arr = {

        {1,2,3},

        {3,4,5}

};

http://t.csdn.cn/jismL

2.二维数组的动态初始化

格式:数据类型[ ][ ]数组名 = new 数据类型[m][n];

m表示这个二维数组,可以存放多少个一维数组,

n表示这个一维数组,可以存放多少个元素

示范:int[ ][ ] arr = new int[2][4];

2表示这个二维数组可以存放2个一维数组,

4表示这个一维数组可以存放4个int类型的元素

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/8465.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis事务入门及命令

文章目录Redis 事务入门及命令事务概念Redis 事务概念Redis 事务特性Redis 三个阶段入门代码示例Redis 相关命令MULTIDISCARDEXECWATCHUNWATCHRedis 事务入门及命令 事务概念 数据库事务( transaction )是访问并可能操作各种数据项的一个数据库操作序列&#xff0c;这些操作要…

详解 YUV,一文搞定 YUV 是什么!

YUV 是一个颜色模型&#xff0c;通常用作彩色图像管道的一部分。它对彩色图像或视频进行编码时考虑到了人类的感知&#xff0c;与“直接”的 RGB 表示相比&#xff0c;允许减少色度分量的带宽。历史上&#xff0c;术语 YUV 和 Y’UV 用于电视系统中颜色信息的特定模拟编码。今天…

HTML学生作业网页:使用HTML+CSS技术实现传统文化网页设计题材-西安事变历史纪念馆 10页 带视频 带音乐

Web前端开发技术 描述 网页设计题材&#xff0c;DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | 茶文化网站 | 中华传统文化题材 | 京剧文化水墨风书画 | 中国民间年画文化艺术网站 | HTML期末大学生网页设计作业 HTML&#xff1a;结构 CSS&#xff1a;样式 在操作方面上运…

《上海悠悠接口自动化平台》-4.注册用例集实战演示

前言 以注册接口为例&#xff0c;在平台上演示如何维护接口自动化用例 访问地址http://47.108.155.10/login.html 用户名: demo, 密码: demo123 有兴趣的可以自己去查看用例规范 和 运行效果。 API 接口层 先找出注册接口的接口文档&#xff0c;以下是接口文档部分 主要关…

Redis配置哨兵及其机制

目录一、Redis哨兵诞生背景二、关于哨兵三、哨兵机制的基本流程3.1 监控3.2 选主3.3 通知四、关于主观下线和客观下线4.1 主观下线4.2 客观下线五、选主规则3.1 优先级最高的从库得分高3.2 和旧主库同步程度最接近的从库得分高3.3 ID 号小的从库得分高六、配置流程七、总结一、…

网络面试-0x10地址栏输入URL敲入回车后发生了什么?

一、 URL解析 1、 首先判断你输入的是一个合法的URL还是待搜索的关键字 2、如果是URL&#xff0c;对URL进行解析 二、 DNS查询 1、设备 —— 本地DNS服务器 —— xx 递归过程 2、DNS服务器和 顶级域名服务器、二级域名服务器、权威域名服务器之间是迭代过程。 三、 TCP连接 …

redis和selery相关知识点

目录标题一&#xff1a;redis字符串操作二&#xff1a;redis hash操作三&#xff1a;redis列表操作四&#xff1a;redis管道1.redis数据库&#xff0c;是否支持事务&#xff1f;2.redis代码实现事务五&#xff1a;redis其他操作六&#xff1a;django中集成redis1.方式一:直接使…

用python就获取到照片拍摄时的详细位置【源码公开】

文章目录一.引言1.读取照片信息&#xff0c;获取坐标2.通过baidu Map的API将GPS信息转换成地址。二.源码附上&#xff01;&#xff01;&#xff01;注意事项一.引言 先看获取到的效果 拍摄时间&#xff1a;2021:12:18 16:22:13 照片拍摄地址:(内蒙古自治区包头市昆都仑区, 内…

pytorch从零开始搭建神经网络

目录 基本流程 一、数据处理 二、模型搭建 三、定义代价函数&优化器 四、训练 附录 nn.Sequential nn.Module model.train() 和 model.eval() 损失 图神经网络 基本流程 《PyTorch深度学习实践》完结合集_哔哩哔哩_bilibili1. 数据预处理&#xff08;Dataset、…

由浅入深,一起来刷Java高级开发岗面试指南,明年面试必定无忧!

前言 我只想面个CV工程师&#xff0c;面试官偏偏让我挑战造火箭工程师&#xff0c;加上今年这个情况更是前后两男&#xff0c;但再难苟且的生活还要继续&#xff0c;饭碗还是要继续找的。在最近的面试中我一直在总结&#xff0c;每次面试回来也都会复盘&#xff0c;下面是我根…

为啥50岁以后,病就增多了?中老年人想要少生病,该做些什么?

人到中年&#xff0c;生活会有很多变化&#xff0c;很多男性朋友从以前别人口中的小伙子&#xff0c;变成现在家里的顶梁柱&#xff0c;很多以前别人口中的小姑娘&#xff0c;变成现在的贤妻良母&#xff0c;或者拥有自己的一番事业。角色在变化的同时&#xff0c;身体情况也发…

高压电气系统验证

纯电和混合动力汽车中的高压电气系统关乎整车的能耗和安全&#xff0c;需要在部件及整车开发阶段做全面的测试与验证。符合ISO 21498*标准的电压、电流一体式测量模块CSM HV BM系列产品&#xff0c;可以直接串联在整车级别的高压电气线缆中&#xff0c;安全可靠的完成高压电气系…

java面试强基(2)

字符型常量和字符串常量的区别? 形式 : 字符常量是单引号引起的一个字符&#xff0c;字符串常量是双引号引起的 0 个或若干个字符。 含义 : 字符常量相当于一个整型值( ASCII 值),可以参加表达式运算; 字符串常量代表一个地址值(该字符串在内存中存放位置)。 占内存大小 &…

SpringCloud 核心组件Feign【远程调用自定义配置】

目录 1&#xff0c;Feign远程调用 1.1&#xff1a;Feign概述 1.2&#xff1a;Feign替代RestTemplate 1&#xff09;&#xff1a;引入依赖 2&#xff09;&#xff1a;添加注解 3&#xff09;&#xff1a;编写Feign的消费服务&#xff0c;提供服务 4&#xff09;&#xff1a;测…

C. Discrete Acceleration(浮点二分)

Problem - 1408C - Codeforces 题意: 有一条长度为l米的道路。路的起点坐标为0&#xff0c;路的终点坐标为l。 有两辆汽车&#xff0c;第一辆站在路的起点&#xff0c;第二辆站在路的终点。它们将同时开始行驶。第一辆车将从起点开到终点&#xff0c;第二辆车将从终点开到起…

通俗易懂的React事件系统工作原理

前言 React 为我们提供了一套虚拟的事件系统&#xff0c;这套虚拟事件系统是如何工作的&#xff0c;笔者对源码做了一次梳理&#xff0c;整理了下面的文档供大家参考。 在 React事件介绍 中介绍了合成事件对象以及为什么提供合成事件对象&#xff0c;主要原因是因为 React 想…

【附源码】Python计算机毕业设计图书商城购物系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;我…

MongoDB学习一:相关概念和单机部署

目录一、MongoDB 应用场景&#xff1a;二、什么时候使用MongoDB&#xff1a;三、MongoDB简介&#xff1a;四、体系结构&#xff1a;五、数据模型&#xff1a;六、MongoDB的特点&#xff1a;七、MongoDB单机部署一、MongoDB 应用场景&#xff1a; 二、什么时候使用MongoDB&#…

对FD描述符(包括inode以及三张表)的一点理解

文件描述符&#xff0c;简单来说是一个从0开始递增的非负整数。 具体来说是linux/unix对文件系统的一种底层抽象&#xff0c;这种抽象是通过三张表来实现的。 这三张表分别是&#xff1a; 1.进程级的文件描述符表&#xff1b;(文件标志位/文件指针) 2.系统级的打开文件描述…

Android Studio App开发之下载管理器DownloadManager中显示、轮询下载进度、利用POST上传文件讲解及实战(附源码)

运行有问题或需要源码请点赞关注收藏后评论区留言~~~ 一、在通知栏显示下载进度 利用GET方式读取数据有很多缺点比如1&#xff1a;无法端点续传 一旦中途失败只能重新获取 2&#xff1a;不是真正意义上的下载操作 无法设置参数 3&#xff1a;下载过程中无法在界面上上展示下…