黑马程序员java部分笔记(持续更新)九点六:数组的常见操作

数组的常见操作:

求最值
求和
交换数据
打乱数据

---------------------------------------------------------------------------------------------------------------------------------
1.求最值:【个人建议看看B站上的视频,提有意思的】
假定五个元素:
定义max变量准备记录擂台上的变化
int max=arr[0];
遍历数组获取每一个元素

for(int i=1;i<arr.length;i++){
arr[i];
}


让每一个跟max比较如果找到更大的进行比较,如果找到更大的,就让max记录该元素 
 

for(int i=1;i<arr.length;i++)
{
if(arr[i]>max)
{
max=arr[i];
}
}

2.求和并统计个数 


练习:遍历数组求和

需求:生成10个1~100之间的随机数组
(1)求和
(2)求平均数
(3)统计有多少个值
//分析:1.定义数组
int []arr=new int[10]
2.吧随机数存入到数组中
random r=new random ()
[这里用到随机数]
int number   =r. nextInt(bound:100)+1;
//把生成的随机数添加的数组当中
//数组名【索引】=数据;
arr[i]=number;
}
//(1)求出所有的数据的和
定义所有变量

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


//(2)求所有数据的平均数

int avg=sum /arr.length;
Sytem.out.orintln("数组中平均数为:"+avg);


 


//(3)统计有多少个数据比平均值小

int count   =0;
for(int i=0;i<arr.length;i++)
{
if(arr[i]<avg)
{
count++;
}
}
//当循环结束后就表示我们已经找到了所有比平均数小的数据
Ssytem.out.println("在数组中,一共有"+count+"个数据,比平均数小");
//遍历数组,验证答案
for(int i=0;i<arr.length;i++){
System.out.prtint(arr[i]+" ");
}

---------------------------------------------------------------------------------------------------------------------------------
3.交换数组中的数据


需求:定义一个数组,存入1,2,3,4,5。按照需求交换索引对应的元素
交换前:1,2,3,4,5
交换后:5,4,3,2,1

int a=10;
int b=20;
//把变量b的值赋给了变量a,那么变量a原来的值就被覆盖了
a=b;//a=20 b=20
-----------如果加入一个空的数组-----------

int temp=a;
a=b;
b=temp;
System.out.println(a);
System.out.println(b);


/*需求:一个数组,将数组中的0索引和最大值进行交换
//也是可以利用第三方变量进行交换

int temp=arr[0];
arr[0]=arr[4];
arr[4]=temp;
//3.遍历数组
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]+"");
}
//正式版
//1.定义数组存储数据
int[]arr={1,2,3,4,5};
//2.利用循环交换数据
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++){
Sytem.out.println(arr[i]+"");
}

---------------------------------------------------------------------------------------------------------------------------------

4.打乱数据


需求:定义一个数组,存入1~5,要求打乱所有数据的顺序。
分析:
难点:如何获得数组的随机索引
int[]arr={1,2,3,4,5};
//索引范围:0,1,2,3,4
//随机数方程:
Random r=new Random();
int randomIndex=r.nextint(bound:5);
Sytem.out.println(randomIndex);

代码部分:

//1.定义数组储存1~5
int[]arr={1,2,3,4,5};
//2.循环遍历数组,从0索引开始打乱数据的数据
Random r=new Random();
for(int i=0;i<arr.length;i++){
//生成一个随机数列
int randomIndex=r.nextInt(arr.length);
//拿着随机索引指向的元素 跟i指向的元素进行交换
int temp=arr[i];
arr[i]=arr[randomIndex];
arr[randomIndex]=temp;
}
//当循环结束之后那么数组中所有元素已经开始打乱顺序了
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]+"");
}
}
}

-------------------------------------------------建议看完黑马之后复习用~---------------------------------------------

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

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

相关文章

11.vue学习笔记(组件生命周期+生命周期应用+动态组件+组件保持存活)

文章目录 1.组件生命周期2.生命周期应用2.1通过ref获取元素DOM结构2.2.模拟网络请求渲染数据 3.动态组件3.1.A&#xff0c;B两个组件 4.组件保持存活&#xff08;销毁期&#xff09; 1.组件生命周期 每个Vue组件实例在创建时都需要经历一系列的初始化步骤&#xff0c;比如设置…

Android摄像头横屏的时候_人脸预览横向显示_问题解决---Android原生开发工作笔记164

在Android系统的平板中发现一个问题,我们做的一个Android程序,横屏的时候,摄像头在上面, 然后这个时候程序中的一个人脸预览页面,横向手持平板,摄像头在上面,但是这个时候预览的摄像头画面却是很像头像朝左,也是横过来的. private int getCameraOrientation(int cameraId) {Ca…

Rocky Linux安装部署Elasticsearch(ELK日志服务器)

一、Elasticsearch的简介 Elasticsearch是一个强大的开源搜索和分析引擎&#xff0c;可用于实时处理和查询大量数据。它具有高性能、可扩展性和分布式特性&#xff0c;支持全文搜索、聚合分析、地理空间搜索等功能&#xff0c;是构建实时应用和大规模数据分析平台的首选工具。 …

Linux学习之system V

目录 一&#xff0c;system V共享内存 快速认识接口 shmget(shared memory get) shmat(shared memory attach) shmdt(shared memory delete) shmctl (shared memory control) 编写代码 综上那么共享内存与管道通信有什么区别&#xff1f; system v消息队列 system v信号…

《Effective C++》- 极精简版 41-55条

本文章属于专栏《业界Cpp进阶建议整理》 继续上篇《Effective C》- 极精简版 31-40条。本文列出《Effective C》的41-55条的个人理解的极精简版本。 40、谨慎使用多重继承 个人见解&#xff1a;这是一个性价比不高的功能&#xff0c;容易出错&#xff0c;且收益不高。java语言…

代码随想录训练营总结篇

1:刚开始学习了数据结构的时候,碰到一些树图等有点畏难,感觉刷力扣跟是一件恐怖的事情 2:在网上找了很多关于数据结构与算法的视频讲解,有听进去,但是自己动手写有点困难 3:碰到一些比较复杂的问题时需要与人讨论,加了一些代码随想录中的群,发现这里是学习算法 的天堂,大家都…

【深度学习笔记】深度卷积神经网络——NiN

网络中的网络&#xff08;NiN&#xff09; LeNet、AlexNet和VGG都有一个共同的设计模式&#xff1a;通过一系列的卷积层与汇聚层来提取空间结构特征&#xff1b;然后通过全连接层对特征的表征进行处理。 AlexNet和VGG对LeNet的改进主要在于如何扩大和加深这两个模块。 或者&am…

Android 14 权限

问题Android 14 按照视频播放类的应用 无法获取到权限。 原因是从 Android 13 开始&#xff0c;如果你的应用程序 targetSdk 指定到了 33 或以上&#xff0c;那么 READ_EXTRERNAL_STORGE 权限就完全失去了作用&#xff0c;申请它将不会产生任何效果。 与此相对应的&#xff0c…

C编程学习资源汇总

Study Soures Pool 基础:推荐 C Primer Plus 第6版 中文版 + C Primer Plus 第6版 中文版习题解答 进阶:推荐使用小甲鱼的学习视频,课程细致,而且免费,资源很丰富。 首页:鱼C工作室-免费编程视频教学|Python教学|Web开发教学|全栈开发教学|C语言教学|汇编教学|Win32开发…

诉诸存储和传输的编码

用脑补而不是重传对有损传输进行纠错 后&#xff0c;有朋友评论&#xff1a; 可现代的图像压缩、数据编码已经很大程度上把可以脑补的空间从传输载荷中沥干了——完美编码下所传输的数据是近乎噪声的没有任何特点的分布。在这个框架下&#xff0c;被压缩的载荷如果随便丢了一点…

Linux------进程地址空间

目录 一、进程地址空间 二、地址空间本质 三、什么是区域划分 四、为什么要有地址空间 1.让进程以统一的视角看到内存 2.进程访问内存的安全检查 3.将进程管理与内存管理进行解耦 一、进程地址空间 在我们学习C/C的时候&#xff0c;一定经常听到数据存放在堆区、栈区、…

4、正则表达式、本地存储

一、正则表达式 1、定义 用事先定义好的一些特定字符&#xff0c;这样的字符组合&#xff0c;组合成一个“规则字符串” 2、正则的组成 特殊字符 字母、数字、下划线、中文、特殊字符… 元字符&#xff08;常用&#xff09; 1、\d 匹配至少有一个数字 var reg /\d/ /…

2024Java面试题一

目录 问题&#xff1a; 答案&#xff1a; 问题&#xff1a; 什么是Java中的多态性&#xff08;Polymorphism&#xff09;&#xff1f;Java中的重载&#xff08;Overloading&#xff09;和重写&#xff08;Overriding&#xff09;有什么区别&#xff1f;什么是Java中的抽象类&…

XGB-13:使用 XGBoost 外部内存版本

在处理大型数据集时&#xff0c;训练 XGBoost 模型可能会面临挑战&#xff0c;因为整个数据集需要加载到内存中。这可能成本高昂&#xff0c;有时也难以实现。从版本 1.5 开始&#xff0c;用户可以定义自定义迭代器以按块加载数据来运行 XGBoost 算法。外部内存可以用于训练和预…

每日一题Acwing-借教室

503. 借教室 - AcWing题库 想到了差分没想到二分法。同时注意INT的范围是10位。 #include<iostream> using namespace std; int n,m; const int N 1e610; int r[N],s[N],d[N],t[N]; long long b[N]; bool check(int mid){for(int i1;i<n;i){b[i]r[i]-r[i-1];}for(…

SpringBoot整合rabbitmq-直连交换机队列(二)

说明&#xff1a;本文章主要是Direct定向/直连类型交换机的使用&#xff0c;它的大致流程是将一个队列绑定到一个直连交换机上&#xff0c;并赋予一个路由键 routingkey&#xff0c;当一个消息携带着路由值为routingkey&#xff0c;这个消息通过生产者发送给交换机时&#xff0…

【冲击蓝桥篇】动态规划(下):你还在怕动态规划!?进来!答题模板+思路解析+真题实战

&#x1f389;&#x1f389;欢迎光临&#x1f389;&#x1f389; &#x1f3c5;我是苏泽&#xff0c;一位对技术充满热情的探索者和分享者。&#x1f680;&#x1f680; &#x1f31f;特别推荐给大家我的最新专栏《数据结构与算法&#xff1a;初学者入门指南》&#x1f4d8;&am…

【vue】vue 是怎么把 template 模版编译成 render 函数的,什么是AST抽象语法树

什么是AST 抽象语法树 是一个对象/或者json是一个数据结构 AST通常是由多个节点组成的树状结构&#xff0c;每个节点代表一个语法单位或表达式。节点之间的关系通过父子关系或兄弟关系来表示程序的结构。在不同的编程语言和工具中&#xff0c;AST可能有不同的表示方式和节点类…

Python中检查一个数字是否是科技数的完整指南

目录 前言 什么是科技数&#xff1f; 如何判断一个数字是否是科技数&#xff1f; 分割数字并计算平方 Python实现科技数检测的示例代码 科技数的应用场景 1. 数字游戏 2. 数据处理 3. 算法优化 4. 数据结构设计 总结 前言 科技数&#xff08;Tech Number&#xff09;是一…