2022Java学习笔记十二(数组的遍历,数组遍历求和,数组排序,数组随机排名案例,数组猜数字游戏案例,数组求最大值案例,数据遍历求和案例)

遍历:就是逐个数据的访问

数组遍历的快捷键【数组名.fori+回车】

package com.zcl.traverse;public class Demo {public static void main(String[] args) {// 创建数组int age[] = {1,2,3,4,5,68,54,652};// 遍历数组(快捷键 数组名.fori+回车)for (int i = 0; i < age.length; i++) {System.out.println(age[i]);}}
}

数据遍历求和案例

需求:
某部门5位员工的销售额分别是:16,32,8,100,78计算部门的总销售额

package com.zcl.traverse;public class DemoTest {public static void main(String[] args) {// 数组元素求和int[] money = {16,32,8,100,78};// 定义求和变量int sum = 0;// 遍历数组中的元素for (int i = 0; i < money.length; i++) {sum+=money[i];}System.out.println("数组的和是:"+sum);}
}

数组求最大值案例

定义一个数组,比较最大值

package com.zcl.traverse;public class tese {public static void main(String[] args) {// 求数组最大值// 定义静态测试数组int[] arr = {12,445,4548,1242,15,-5};// 定义最大值变量,建议使用数组第一个元素作为参照int max = arr[0];// 遍历数组的每一个元素,依次比较数据,大的替换for (int i = 0; i < arr.length; i++) {if(arr[i] > max){max=arr[i];}}System.out.println("数组的最大值是:"+max); // 4548}
}

数组猜数字游戏案例

package com.zcl.traverse;import java.util.Random;
import java.util.Scanner;public class test2 {public static void main(String[] args) {// 定义动态初始化数组int[] arr = new int[5];// 随机生成五个1-20之间的数据存储动态数组中Random r = new Random();for (int i = 0; i < arr.length; i++) {arr[i] = r.nextInt(20)+1;}Scanner sc = new Scanner(System.in);OUT:// 使用死循环进行猜测while (true){System.out.println("请猜测1-20之间的数字:");int guessData = sc.nextInt();// 遍历数组,看是否有猜中for (int i = 0; i < arr.length; i++) {if(arr[i] == guessData){System.out.println("您猜中了缩影是:"+i);break OUT;}}System.out.println("当前猜测数据不存在");}// 输出全部元素,让用户看到for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+"\t");}}
}

数组随机排名案例
扑克牌游戏可以用来洗牌

package com.zcl.traverse;import java.util.Random;
import java.util.Scanner;public class test3 {public static void main(String[] args) {// 动态初始化数组int[] codes = new int[5];// 2、定义循环5次,依次录入工号Scanner sc = new Scanner(System.in);for (int i = 0; i < codes.length; i++) {// 正式录入工号System.out.println("请输入第"+(i+1)+"个工号信息");int code = sc.nextInt();// 存入数组中codes[i] = code;}// 遍历数组中的元素,随机一个索引进行交换(重点)Random r = new Random();for (int i = 0; i < codes.length; i++) {// 当前遍历的元素值codes[i]// 随机一个索引出来int index = r.nextInt(codes.length);// 定义一个临时变量存储indexint temp = codes[index];codes[index]=codes[i];codes[i]=temp;}// 4、遍历数组元素输出for (int i = 0; i < codes.length; i++) {System.out.print(codes[i]+"\t");}}
}

数组的排序

就是对数组中的元素,进行升序(由小到大)或降序(由大到小)的操作

排序的技术:

  1. 冒泡排序
    每次从数组中找出最大值放在数组的后面去
    思想:
    从头开始两两比较,把较大的元素与较小的元素进行交换
    没轮把当前最大的一个元素存入到数组当前的末尾
    实现步骤:
    定义一个外部循环控制总共需要冒几轮【数组的长度-1】
    定义一个内部循环,控制每轮依次往后比较几个位置【数组长度-i-1】
    如果当前位置的元素值》后一个元素值,两者交换
  2. 选择排序
  3. 快速排序
  4. 插入排序

数据搜索的相关技术

  1. 二分搜索
  2. 分块搜索
  3. 哈希表查找
package com.zcl.traverse;public class test4 {public static void main(String[] args) {// 目标:数组冒泡排序// 1、定义数组,存储数据int[] arr = {5,3,2,9};// 2、定义一个循环控制比较轮次for (int i = 1; i <= arr.length-1; i++) {// i==1 i==2 i==3// 次数3    2    1// 3、定义一个循环每轮比较次数,占位for (int j = 0; j < arr.length-1; j++) {// 判断j当前位置的元素,是否大于后一个位置,大的替换if(arr[j] > arr[j+1]){int temp = arr[j+1];arr[j+1]=arr[j];arr[j]=temp;}}}// 遍历数组内容输出for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+"\t");}}
}

2022Java学习笔记十二(数组的遍历,数组遍历求和,数组排序,数组随机排名案例,数组猜数字游戏案例,数组求最大值案例,数据遍历求和案例)相关推荐

  1. Python语言入门这一篇就够了-学习笔记(十二万字)

    Python语言入门这一篇就够了-学习笔记(十二万字) 友情提示:先关注收藏,再查看,12万字保姆级 Python语言从入门到精通教程. 文章目录 Python语言入门这一篇就够了-学习笔记(十二万字 ...

  2. Polyworks脚本开发学习笔记(十二)-输出和读取文本文件

    Polyworks脚本开发学习笔记(十二)-输出和读取文本文件 Polyworks作为一个测量工具,将测量的数据方便的导出到文本文件则是一项必须的功能.在DATA_FILE这个命令下提供了很多子命令用 ...

  3. OpenCV学习笔记(十二)——图像分割与提取

    在图像处理的过程中,经常需要从图像中将前景对象作为目标图像分割或者提取出来.例如,在视频监控中,观测到的是固定背景下的视频内容,而我们对背景本身并无兴趣,感兴趣的是背景中出现的车辆.行人或者其他对象. ...

  4. 吴恩达《机器学习》学习笔记十二——机器学习系统

    吴恩达<机器学习>学习笔记十二--机器学习系统 一.设计机器学习系统的思想 1.快速实现+绘制学习曲线--寻找重点优化的方向 2.误差分析 3.数值估计 二.偏斜类问题(类别不均衡) 三. ...

  5. ROS学习笔记十二:使用roswtf

    ROS学习笔记十二:使用roswtf 在使用ROS过程中,roswtf工具可以为我们提供ROS系统是否正常工作的检查作用. 注意:在进行下列操作之前,请确保roscore没有运行. 检查ROS是否安装 ...

  6. 【现代机器人学】学习笔记十二:轮式移动机器人

    目录 轮式机器人类型 全向轮式机器人 建模 单个全向轮是怎么运动的 多个全向轮是如何带动底盘运动的 运动规划和反馈控制 非完整约束轮式移动机器人 建模 独轮车 差速驱动机器人 车型机器人 非完整移动机 ...

  7. Programming Computer Vision with Python (学习笔记十二)

    ORB(Oriented FAST and Rotated BRIEF)可用来替代SIFT(或SURF),它对图像更具有抗噪特性,是一种特征检测高效算法,其速度满足实时要求,可用于增强图像匹配应用. ...

  8. Programming Computer Vision with Python (学习笔记十二) 1

    ORB(Oriented FAST and Rotated BRIEF)可用来替代SIFT(或SURF),它对图像更具有抗噪特性,是一种特征检测高效算法,其速度满足实时要求,可用于增强图像匹配应用. ...

  9. (C/C++学习笔记) 十二. 指针

    十二. 指针 ● 基本概念 变量的地址就是指针,存放指针的变量就是指针变量(因而又叫作地址变量 address variable); 这个地址编号本身就是一个无符号的整数,在32位系统下为4字节(8位 ...

  10. 【theano-windows】学习笔记十二——卷积神经网络

    前言 按照进度, 学习theano中的卷积操作 国际惯例, 来一波参考网址 Convolutional Neural Networks (LeNet) 卷积神经网络如何应用在彩色图像上? 卷积小知识 ...

最新文章

  1. 便携式不锈钢管道焊接机器人_304不锈钢管居然可以发黑!?
  2. python命名空间更改_在Python中使用ElementTree改变命名空间前缀
  3. 有关定时任务的表达式--cron 详细解
  4. 【Android Protobuf 序列化】Protobuf 性能测试 ( fastjson 序列化与反序列化 | gson 序列化与反序列化 | 三种序列化与反序列化性能对比 )
  5. vuex页面数据丢失_使用vuex解决刷新页面state数据消失的问题记录
  6. weblogic9修改线程数设置
  7. memcached 相关
  8. Python os模块文件操作(一)
  9. Python str字符串常用到的函数
  10. 一统江湖的大前端(1)——PPT制作库impress.js(含附件)
  11. Abra CEO:PayPal满足的比特币购买需求比每天挖出的比特币数量更多
  12. 语文到底要不要补课?
  13. EasyUI:Layout 布局
  14. iqoo支持typec耳机吗_JEET ONE蓝牙耳机:颜值在线的实力派
  15. C语言main函数带参数在VC6下的调试方法
  16. 机械设计基础课程设计详细步骤(说明书)
  17. 使用Excel2016求解运筹学线性规划
  18. 程序员-这有一份520表白秘笈送给你
  19. BCM业务连续性管理
  20. win7开机加速怎么设置|win7开机加速的方法

热门文章

  1. 在HTML文字标签i什么效果,html的i标签有什么作用
  2. 哪些机器学习模型需要归一化
  3. android蓝牙红外,单片机蓝牙+红外学习转发模块源程序 实现用安卓手机控制所有家电...
  4. Java 汉字转拼音(完美支持解决多音字)
  5. MyBatis中foreach传入参数为Poji装饰类,list、数组的不同写法
  6. 数学通道的应用(十四)-负PWM控制下有效值的计算
  7. 从0到1搭建小米商城首页
  8. 计算机组装有哪些,详解电脑组装配置有哪些
  9. Ignite 安装启动(本地单机)
  10. 使用中国电信物联网开发者平台的步骤总结