Java【数组】
数组是一组类型相同的数据(基本类型或引用类型)的集合,数组中每个数据称为元素。数组也是Java的对象,一旦创建,数组长度就固定了。
创建数组
1.声明一个数组类型的引用变量(数组变量),但是不能指定数组长度
int[] scores; //合法
String names[]; //合法//int scores[30]; //非法
可以用符号“...”声明数目可变参数
//有一个max()方法要从一组int类型的数组中找出最大值,但是数组的数目不固定(2~6之间)
public class Varable{public static int max(int... datas){ //datas为可变参数if(datas.length == 0)return -1; //为传入任何参数int result = 0;for(int a: datas)if(result<a)result=a;return result;}public static void main(String[] args){System.out.println(max(5));System.out.println(max(5,8,9,3));System.out.println(max(new int[]{4,10,7,3})); //传入数组System.out.println(max());}
}
2.用new创建数组对象
- 按大小为数组分配内存
- 为每个数组元素赋予数字类型的默认值
- 返回数组对象的引用
int[] scores = new int[50];
System.out.println(scores[0]); //打印0
String[] names = new String[50];
System.out.println(names[0]); //打印null
数组初始化
int[] x = new int[]{5,6,7,8,9}; //合法
//int[] x = new int[5]{5,6,7,8,9}; //非法,不能在[]中指定数组长度int[] y = new int[5];
for(int i=0; i<y.length; i++)y[i] = y.length - i; //合法
访问数组
//遍历数组
/**报数Game:有编号的玩家轮流报数1~3,每次报道3的出局,按顺序进行,问最后剩下的是哪个玩家1、isActive数组记录玩家是否在圈内,若isActive[i]=false,那么编号为i+1的玩家已出局2、为了跟踪报数状态:定义了三个变量size:表示当前在圈内的玩家数count:表示当前的报数,为3时,会将其置0point:当前正在报数的玩家在isActive数组中的索引位置,为n时,重置0 */public class Game{public static int play(int n){boolean[] isActive = new boolean[n]; //记录每个玩家是否在圈//初始化开局玩家信息for(int i = 0; i < isActive.length; i++)isActive[i] = true;int size = n; //圈内玩家数int count = 0; //当前报数int point = 0; //当前报数玩家的索引while(size > 1){ //循环报数至圈内只剩下一人if(isActive[point]){ //当前轮到的玩家在圈内count++; //报下一个数if(count == 3){ //如果当前报数已到3,处理count、isActive[point]count = 0;isActive[point] = false; //玩家出局size--; //玩家规模减一}}point++; //轮到下一个报数人if(point == n) //如果以及轮完一圈point = 0; //从第一个玩家开始再来报数}int last = 0;for(int i = 0; i < n; i++)if(isActive[i])last = i + 1;return last;}public static void main(String[] args){System.out.println(play(20)); //打印}
}
多维数组
//求转置矩阵
public class Reversal{public static int[][] change(int[][] from){int rows = from.length; //原始矩阵行数int cols = from[0].length; //原始矩阵列数int[][] to = new int[cols][rows]; //转置后矩阵for(int i = 0; i < from.length; i++) //循环行for(int j = 0; j < from[i].length; j++) //循环列to[j][i]=from[i][j];return to;}public static void main(String[] args){int[][] from = {{11,22,33,44},{55,66,77,88},{99,92,23,38}};int[][] to = change(from);for(int i = 0; i < from.length; i++){ for(int j = 0; j < from[i].length; j++) System.out.print(to[i][j]+" ");System.out.println();}}
}
相关文章:
Java【数组】
数组是一组类型相同的数据(基本类型或引用类型)的集合,数组中每个数据称为元素。数组也是Java的对象,一旦创建,数组长度就固定了。 创建数组 1.声明一个数组类型的引用变量(数组变量)ÿ…...
xAI巨无霸超级计算机上线:10万张H100 GPU,计划翻倍至20万张
在短短四个多月的时间里,埃隆马斯克的X公司(前身为Twitter)推出了世界上最强劲的人工智能训练系统。名为Colossus的超级计算机使用了多达10万张NVIDIA H100 GPU进行训练,并计划在未来几个月内再增加5万张H100和H200 GPU。 “本周末…...
python集合
1. 请解释Python中的集合(set)是什么? Python中的集合(set)是一个无序的、不重复的元素序列。它的主要用途是进行成员关系测试和消除重复元素。集合对象还支持数学运算,如并集、交集、差集和对称差分。 以…...
算法打卡 Day29(回溯算法)-复原 IP 地址 + 子集 + 子集 Ⅱ
文章目录 Leetcode 93-复原 IP 地址题目描述解题思路 Leetcode 78-子集题目描述解题思路 Leetcode 90-子集 Ⅱ题目描述解题思路 Leetcode 93-复原 IP 地址 题目描述 https://leetcode.cn/problems/restore-ip-addresses/description/ 解题思路 这是一道切割问题,…...
LeetCode 热题100-17 缺失的第一个正数
缺失的第一个正数 给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。 示例 1: 输入:nums [1,2,0] 输出:3 解释:范围 [1,…...
基于CloudflareSpeedTest项目实现git clone加速
1.网络测速 「自选优选 IP」测试 Cloudflare CDN 延迟和速度,获取最快 IP 更多内容参考项目:https://github.com/XIU2/CloudflareSpeedTest 国外很多网站都在使用 Cloudflare CDN,但分配给中国内地访客的 IP 并不友好(延迟高、丢…...
对与单纯post方法写项目的修改成baseservlet方法
解决的问题: 1.用baseservlet方法来写: 我之前没听明白gsa讲的那些,然后自己写了注册,用的post方法,就是那个叫我们最好不要用有点low的方法,后面与别人交流后发现是要用baseservlet来写,叫他…...
北京地铁换乘站人流量监控与图像识别技术优化
关于“北京地铁换乘站人流量监控与图像识别技术优化”,可以从以下几个方面进行详细阐述: 一、北京地铁换乘站人流量监控现状 北京地铁作为全国最繁忙的城市轨道交通系统之一,其换乘站的人流量监控是保障运营安全、提高运营效率的关键环节。…...
Day16_0.1基础学习MATLAB学习小技巧总结(16)——元胞数组
利用空闲时间把碎片化的MATLAB知识重新系统的学习一遍,为了在这个过程中加深印象,也为了能够有所足迹,我会把自己的学习总结发在专栏中,以便学习交流。 素材来源“数学建模清风” 特此说明:本博客的内容只在于总结在…...
C#自定义控件的放置与拖动
1、自定义控件 using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Drawing.Drawing2D; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;namespace PartA…...
python circular import python循环导入问题
遇到的问题是因为模块之间存在循环导入(circular import),导致了ImportError。循环导入是指两个或多个模块相互导入对方,如模块A导入了模块B的方法,模块B又导入了模块A的方法,从而导致其中一个模块在完全初…...
kafka集群安装
kafka集群安装 文档 kafka单机安装 下载地址 官网:https://kafka.apache.org/最新版本下载页面:https://kafka.apache.org/downloads 说明 版本选择:3.0.0,kafka_2.12-3.0.0.tgz下载地址:https://archive.apache…...
SQL通用语法、SQL分类以及DDL
1.SQL 1.1SQL通用语法 1.SQL语句可以单行或多行书写,以分号结尾2.SQL语句可以使用空格/缩进来增强语句的可读性。3.MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。4.注释: 单行注释:–空格 注释内容或#注释内容&#…...
静态链接和动态链接
静态链接和动态链接是两种将可执行文件与库进行链接的方式。它们的主要区别体现在链接时机、可执行文件的大小以及运行时的灵活性上。 1.静态链接 在静态链接中,所有需要的库(例如 C 标准库 libc)都会在编译时被复制并嵌入到最终的可执行文…...
构建智能门禁安防系统:树莓派 4B、OpenCV、SQLite 和 MQTT 的应用(代码示例)
一、项目概述 1.1 项目目标和用途 本项目旨在开发一个智能门禁安防系统,该系统利用摄像头和人脸识别技术,结合本地人脸库,实现对进出人员的自动识别和管理。系统能够实时记录进出人员的信息,并对未注册人员进行警报提示。通过与…...
基于 Konva 实现Web PPT 编辑器(二)
动画系统 为了实现演示中复杂的动画效果,使用 Animation 类统一管理;切换动画通过 css animation 实现,并且是应用在 konvajs-content 上,动画则通过 gsap 实现,应用在 Konva.Node 上,实现思路如下…...
【开源免费】基于SpringBoot+Vue.JS在线竞拍系统(JAVA毕业设计)
本文项目编号 T 013 ,文末自助获取源码 \color{red}{T013,文末自助获取源码} T013,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…...
Qt TabWidget添加多个窗口,实现分页窗体布局
Qt TabWidget添加多个窗口窗体,可关闭与打开 点击按钮可判断是否打开,避免重复打开 使用Qt中的TabWidget组件创建一个简单的分页窗体布局。点击按钮时,会新增一个窗体并添加到TabWidget中。每个子窗体能动态获取父窗体指针以进行操作 分别…...
HarmonyOS开发实战( Beta5版)合理使用动画丢帧规范实践
本文列举了部分用于优化动画时延的正反案例,帮助开发者在遇到相似场景时进行优化,解决构建页面动画时遇到动画时延较长的问题。 减少动画丢帧 在播放动画或者生成动画时,画面产生停滞而导致帧率过低的现象,称为动画丢帧。 播放…...
基于BiLSTM-CRF的医学命名实体识别研究(下)模型构建
一.生成映射字典 接下来需要将每个汉字、边界、拼音、偏旁部首等映射成向量。所以,我们首先需要来构造字典,统计多少个不同的字、边界、拼音、偏旁部首等,然后再构建模型将不同的汉字、拼音等映射成不同的向量。 在prepare_data.py中自定义…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...
ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放
简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...
【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
sqlserver 根据指定字符 解析拼接字符串
DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...
