Java数组,超详细整理,适合新手入门
目录
一、什么是Java中的数组?
二、数组有哪些常见的操作?
三、数组的五种赋值方法和使用方法
声明数组
声明数组并且分配空间
声明数组同时赋值(1)
声明数组同时赋值(2)
从控制台输入向数组赋值
四、求总和平均
五、求数组中最大值最小值
六、对数组进行升序排序
六、不调用方法进行数组排序
七、Arrays 类常用方法
一、什么是Java中的数组?
数组是一种数据结构,可以存储多个相同类型的元素;在Java中,数组是一种对象,它可以存储基本数据类型和对象类型。
二、数组有哪些常见的操作?
- 创建数组:使用new操作符创建一个新的数组对象。
- 访问元素:使用索引访问数组中的元素。
- 遍历数组:使用循环结构遍历数组中的所有元素。
- 复制数组:使用System.arraycopy()方法或Arrays.copyOf()方法将一个数组复制到另一个数组中。
- 排序数组:使用Arrays.sort()方法对数组进行排序。
- 搜索数组:使用Arrays.binarySearch()方法在一个已排序的数组中搜索一个元素。
三、数组的五种赋值方法和使用方法
声明数组
int[] arr;
//开辟三个空间
arr = new int[3];
//向数组中赋值,0、1、2是下标
arr[0] = 30;
arr[1] = 97;
arr[2] = 65;
声明数组并且分配空间
int[] arr = new int[3];
//开辟三个空间
//向数组中赋值
arr[0] = 30;
arr[1] = 97;
arr[2] = 65;
声明数组同时赋值(1)
int[] arr = new int[]{30, 97, 65};
声明数组同时赋值(2)
int[] arr = {30, 97, 65};
从控制台输入向数组赋值
int[] arr = new int[3];
System.out.println("向数组中存入三个数据:");
//arr.length是数组的长度
for (int i = 0; i < arr.length; i++) {
//i是下标 arr[i] = input.nextInt();}
//把数组中的值输出
for (int i = 0; i < arr.length; i++) {
//输出数组中的值 System.out.println(arr[i]);
}
四、求总和平均
int i = 0; int zong = 0;
int[] arr = new int[3];
for (i = 0; i < arr.length; i++) {System.out.print("输入第" + (i + 1) + "位同学的成绩:"); arr[i] = input.nextInt();zong = zong + arr[i];
}
System.out.println(i + "位同学的总分是:" + zong + "平均分是:" + zong * 1.0 / arr.length);
五、求数组中最大值最小值
int[] arr = { 90, 100, 98, 67, 45, 79 };int max = arr[0];int min = arr[0];for (int i = 1; i < arr.length; i++) {if (arr[i] > max) {max = arr[i];
}if (arr[i] < min) {min = arr[i];
}
}
System.out.println("最大值为:" + max); System.out.println("最小值为:" + min);
六、对数组进行升序排序
数组升序输出int[] arr1 = { 90, 100, 98, 67, 45, 79 }; Arrays.sort(arr1);for (int i = 0; i < arr1.length; i++) { System.out.println(arr1[i]); } 数组降序输出
int[] arr2 = {90, 100, 98, 67, 45, 79};
Arrays.sort(arr2);
for (int i = arr2.length - 1; i >= 0; i--) { System.out.println(arr2[i]);
}
六、不调用方法进行数组排序
int[] array = {10, 30, 17, 6, 29, 20};
int temp; for(int i = 0;i<array.length -1;i++){for (int j = 0; j < array.length - 1 - i; j++) {if (array[j] < array[j + 1]) {//<为降序,>为升序 temp = array[j];array[j] = array[j + 1];array[j + 1] = temp;}}
}
for(int i :array){System.out.print(i + "\t");
}
七、Arrays 类常用方法
Arrays类位于 java.util 包中, import java.util.Arrays;
int[] array1 = {10, 20, 16, 19, 5};int[] array2 = {10, 20, 16, 19, 5};//boolean equals(array1, array2)比较两个数组是否相等
System.out.println(Arrays.equals(array1, array2));
//打印true //String toString(array)将数组转换成字符串显示值System.out.println(Arrays.toString(array1));
//打印[10, 20, 16, 19, 5] //void fill(array, val)将数组的所有值填充为val Arrays.fill(array2, 20); System.out.println(Arrays.toString(array2));//打印[20, 20, 20, 20, 20] //数组copyOf(array, newLength)将array复制成指定长度的新数组 int[] array3 =Arrays.copyOf(array1, 10);
System.out.println(Arrays.toString(array3));
//打印[10, 20, 16, 19, 5, 0, 0, 0, 0, 0] //int binarySearch(array, key)在array数组中查找指定的值,并返回其索引,前提是数组是有序的 Arrays.sort(array1);
System.out.println(Arrays.binarySearch(array1, 16));
//打印2
相关文章:

Java数组,超详细整理,适合新手入门
目录 一、什么是Java中的数组? 二、数组有哪些常见的操作? 三、数组的五种赋值方法和使用方法 声明数组 声明数组并且分配空间 声明数组同时赋值(1) 声明数组同时赋值(2) 从控制台输入向数组赋值 四、求总和平均 五、求数组中最大值最小值 六…...
1.3数据传输控制方式:IO数据传输控制方式、程序控制(查询)方式、程序中断方式、DMA方式、通道方式、I/O处理机
1.3数据传输控制方式:IO数据传输控制方式、程序控制(查询)方式、程序中断方式、DMA方式、通道方式、I/O处理机程序控制(查询)方式程序中断方式DMA方式通道方式、I/O处理机I/O数据传输方式,由软件到硬件发展…...
Linux 设置语言
文章目录1. 临时设置环境变量2. 默认语言设置3. 语言包4. 安装浏览器 chromium1. 临时设置环境变量 通过设置环境变量,可以使单个命令使用另一种语言LANG $ LANGfr_FR.utf8 date mar. mai 24 12:16:51 CDT 2022后续命令将恢复为使用系统的默认语言进行输出。该loc…...
Python基础-数据类型之集合
一、集合的定义 集合:是一个无序的没有重复元素的序列,因此不能通过索引来进行操作 1:使用set()创建集合 set(object) # 参数为一个序列,整型不能作为参数 set_a set("abcb") print(set_a) # {b, a, c} 2&…...

[Css]Grid属性简单陈列(适合开发时有基础的快速过一眼)
[css进阶]Grid属性简介 文章目录[css进阶]Grid属性简介典型需求网格容器的属性displaygrid-template-columns和grid-template-rowsgrid-template-areasgrid-templategrid-column-gap grid-row-gapgrid-gapjustify-itemsalign-itemsjustify-contentalign-contentgrid-auto-colum…...

100种思维模型之启发式偏差思维模型-017
曾国藩在给儿子的一封家书中曾写道:余于凡事皆用困知勉行工夫,尔不可求名太骤,求效太捷也。熬过此关,便可少进。再进再困,再熬再奋,自有亨通精进之日。 不急躁不求捷径,小火慢炖,将事…...
微服务 feign远程调用时 显示服务不可用 timed-out and no fallback
目录 第一种: failed and no fallback available 1 服务挂掉了 2 服务没有开启 3 注册中心没注册进去 -> ps: 直接调用的接口 通过网关转发失败 会报503 4 高并发下的服务熔断了 第二种: timed-out and no fallback 2.1 业务场景: A服务一切正常 但是B服务显示timeo…...

第一个Java程序(初识Java)
个人主页:平行线也会相交 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创 收录于专栏【JavaSE_primary】 文章目录1.Java概述1.1什么是Java1.2Java之父2.0第一个Java程序编译运行.class3.0程序如何跑起来的?3.1J…...

vulnhub LordOfTheRoot_1.0.1
总结:端口敲门,CVE-2015-8660提权, 目录 下载地址 漏洞分析 信息收集 端口敲门 网站分析 方法一 ssh登录提权 方法二 下载地址 LordOfTheRoot_1.0.1.ova (Size: 1.6 GB)Download: http://www.mediafire.com/download/m5tbx0dua05szjm…...
MutationObserver与IntersectionObserver
MutationObserver 出现原因:当我们需要监听元素发生变化时,不借助使元素发生变化的业务动作的情况下,使用无污染方式监听非常困难,为了解决这个问题,MutationObserver诞生! 概述 可以用来监听DOM的任何变化…...
【ESP 保姆级教程】玩转巴法云篇② ——MQTT设备云,MQTT协议下的数据通信
忘记过去,超越自己 ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️❤️ 本篇创建记录 2023-02-21 ❤️❤️ 本篇更新记录 2023-02-21 ❤️🎉 欢迎关注 🔎点赞 👍收藏 ⭐️留言📝🙏 此博客均由博主单独编写,不存在任何商业团队运营,如发现错误,请…...

植物大战 仿函数——C++
容器适配器 容器适配器不支持迭代器。栈这个东西,让你随便去遍历,是不好的。他是遵循后进先出的。所以他提供了一个街头top取得栈顶数据。 仿函数 仿函数(functor)是C中一种重载了函数调用运算符(operator()&#x…...

【C语言】浮点型数据在内存中的存储
🚀🚀🚀 如果文章对你有帮助不要忘记点赞关注收藏哦🚀🚀🚀 文章目录⭐浮点数在内存中的存储1.1 🤓举个例子:1.2浮点数存储规则🌈:对于M与E有一些特别规定1.3解释前面题目&…...
impala中的刷新元数据和刷新表
impala是Cloudera公司主导开发的新型查询系统,它提供SQL语义,能查询存储在Hadoop的HDFS和HBase中的PB级大数据。 虽然Hive系统也提供了SQL语义,但由于Hive底层执行使用的是MapReduce引擎,仍然是一个批处理过程,难以满…...

Vscode创建vue项目的详细步骤
目录 一、概述 操作的前提 二、操作步骤 一、概述 后端人员想在IDEA里面创建一个Vue的项目,但是这非常麻烦,用vscode这个前端专用软件创建就会非常快速。 操作的前提 1.安装vscode软件的步骤:vscode下载和安装教程和配置中文插件&#…...

如何在面试中介绍自己的项目,才能让软件测试面试官无可挑剔,
四、项目 4.1 简单介绍下最近做过的项目 根据自己的项目整理完成,要点: 1)项目背景、业务、需求、核心业务的流程 2)项目架构,B/S还是C/5,数据库用的什么? 中间件用的什么?后台什么语言开发…...

虹科方案|从 uCPE 到成熟的边缘计算平台
基于开放硬件平台,通用客户端设备 (uCPE) 支持快速添加、集成或删除任意数量的集中管理虚拟功能。 为了增加收入并保持竞争优势,托管服务提供商 (MSP) 和企业正在部署 uCPE 以增强业务敏捷性、加速新服务的引入并提高运营效率。最初,uCPE被部…...

计算机是怎么读懂C语言的?
文章目录前言程序环境翻译环境翻译环境分类编译预处理预处理符号预定义符号#define#undef命令行定义条件编译文件包含头文件包含查找规则嵌套文件包含其他预处理指令编译阶段汇编链接🎉welcome🎉 ✒️博主介绍:博主大一智能制造在读ÿ…...

hadoop入门介绍及各组件功能运行关系
文章目录Hadoop 组成部分1.HDFS2.MapReduce 架构概述3. yarn 架构概述4.HDFS、YARN、MapReduce三者关系Hadoop 组成部分 1.HDFS Hadoop Distributed File System,简称 HDFS,是一个分布式文件系统。 HDFS 架构概述 主要分为 NameNode (mn):存储文件的元…...

(HP)新手引导使用react-shepherd
1,官方参数文档:https://shepherdjs.dev/docs/tutorial-02-usage.html 2,基本代码 import { ShepherdTour } from react-shepherd; import ./index.less; // 自己的样式文件,用来修改样式 import ./shepherd.less; // 将shephe…...

Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...
Objective-C常用命名规范总结
【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名(Class Name)2.协议名(Protocol Name)3.方法名(Method Name)4.属性名(Property Name)5.局部变量/实例变量(Local / Instance Variables&…...

linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...

Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...

tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...

以光量子为例,详解量子获取方式
光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学(silicon photonics)的光波导(optical waveguide)芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中,光既是波又是粒子。光子本…...