Day05:循环问题 / 数组
循环嵌套
循环结构中包含完整的循环结构。
注意:
循环嵌套不限层次
各种循环语句都可以互相嵌套
内层循环中出现的break和continue只作用在内层循环中
外层循环循环一次
内层循环循环一遍
Java 数组
一个能够保存多个相同数据的变量组成。
为什么需要数组?
程序中如果需要保存很多数据时
定义多个变量不好管理
使用数组方便管理
数组组成
变量名就是数组名
保存的数据叫数组元素
数组能够存放的数据数量叫长度
数组中数据的编号叫下标
数组特性
数组中的数据类型相同
数组长度固定不变
数组的元素都有默认值
数组声明
类型 [] 数组名
int []arr;
int arr[];
double[] nums;
数组初始化
int[] arr;
arr=new int[长度];
//和二为一
int[] arr=new int[5];
数组元素赋值
利用数组元素的下标访问数组元素
arr[2]=10;
//对arr数组下标为2的元素赋值为10
数组元素取值
System.out.println(arr[0]);
arr[2]=6;
arr[3]=7;
arr[4]=arr[2]+arr[3];
数组遍历
将数组中的所有元素都访问一遍
实现:
使用循环结构来遍历数组
使用for循环
数组长度
数组名.length来表示数组的长度
int[] nums=new int[4];
System.out.println(nums.length);
数组声明后直接赋值
1:声明直接赋值
int nums={7,6,3,9,9,4,2};
//右侧是{}
//==左边必须是声明
2:先声明后赋值
int[] nums;
nums=new int[]{7,6,3,8,9,4,2}
//==左侧不是声明
//右侧必须要直接赋值
//new 类型名[]{};
//[]必须空着
数组操作
数组对比
Arrays.equals(数组1,数组2);
数组相等的条件:
数组元素个数必须相等
对应位置的元素相等
数组填充
Arrays.fill(数组,填充的值);
数组查找
在进行查找前,必须对数组进行排序
1:没有指定范围查找
binarySearch(要找的数组,要找的值);
2:指定范围查找
binarySearch(查找的数组,开始索引,结束索引,要找的元素);
数组复制
Arraays.copyOf(复制数组名,新数组长度);
//从原数组第一个元素进行复制
注意:
目标数组如果已存在,将不会被重构
Arrays.arraycopy和copyOf
arraycopy
功能强大,使用灵活
参数多,容易发生异常
需要较复杂的数组复制时使用
copyOf
参数少,没异常
功能有限,需要import
需要普通数组的数组扩容,缩容时使用
数组排序
生序:从小到大
降序:从大到小
sort()
Arrays.sort(数组名);
数组引用特征
任何数组都时引用数据类型
基本数据类在栈中保存数值
引用数据类型在栈中保存的是引用
所有传递的是引用
其他排序待补充!!!
Day05:循环问题 / 数组的更多相关文章
- *使用while循环遍历数组创建索引和自增索引值
package com.chongrui.test;/* *使用while循环遍历数组 * * * */public class test { public static void main ...
- 关于for循环删除数组内容出现的问题
昨天用for循环进行数组去重的时候出现的问题, 首先,用双重for循环把前一个和所有后面的元素进行比较,如果相等则删除. 但是,如果数组里面有三个以上连续相等的元素的时候,就会出现问题. var ar ...
- JavaScript 中 for in 循环和数组的问题
本文由 伯乐在线 - ElvisKang 翻译,进林 校稿.未经许可,禁止转载!英文出处:adripofjavascript.com.欢迎加入翻译小组. JavaScript的for…in循环用于迭代 ...
- JavaScript基础精华03(String对象,Array对象,循环遍历数组,JS中的Dictionary,Array的简化声明)
String对象(*) length属性:获取字符串的字符个数.(无论中文字符还是英文字符都算1个字符.) charAt(index)方法:获取指定索引位置的字符.(索引从0开始) indexOf(‘ ...
- swift基本用法-for循环遍历,遍历字典,循环生成数组
// Playground - noun: a place where people can play import UIKit //--------------------------------- ...
- SAS 循环与数组
SAS 循环与数组 SAS提供了循环语句以满足在编程中需要多次执行相同操作的情 况.有时还需要对不同的变量执行相同的操作,此时可定义SAS数组,并通过数组名和下标来引用这些变量. 1 循环 SAS循环 ...
- PHP(方法 函数 循环 和 数组 查找)
循环 和 数组 查找 顺序查找 二分法查找 冒泡排序 方法 函数 定义:一堆代码的集合叫做函数(满足条件下“一堆”) 语法,定义,调用,参数列表(形参,实参),返回值 两种方法: function 方 ...
- js循环遍历数组
一维数组的遍历 <script> //循环遍历数组 var animals = ["cat",'dog','human','whale','seal']; var an ...
- for循环遍历数组(数组1)
package com.mon10.day24; import java.util.Scanner; /** * 类说明 :计算学生的总成绩和平均分 * @author 作者 : chenyanlon ...
随机推荐
- spring 视图解析 ——InternalResourceViewResolver
原文:https://www.cnblogs.com/lyj-gyq/p/8963885.html Spring自带了13个视图解析器,能够将逻辑视图名转换为物理实现 首先将会介绍 InternalR ...
- 找到并更改启动时间(timeout)
centos7更改引导项等待时间 centos7已经不用grub,改用grub2. [ root]# vi /boot/grub2/grub.cfg 找到并更改启动时间(timeout) [root] ...
- 【leetcode】1271. Hexspeak
题目如下: A decimal number can be converted to its Hexspeak representation by first converting it to an ...
- TCP如何保证可靠传输
TCP 协议如何保证可靠传输 一.综述 1.确认和重传:接收方收到报文就会确认,发送方发送一段时间后没有收到确认就重传. 2.数据校验 3.数据合理分片和排序: UDP:IP数据报大于1500字节 ...
- JPA 开发写SQL时候遇见的困难点
官方文档 https://docs.spring.io/spring-data/jpa/docs/1.11.16.RELEASE/reference/html/#repositories.specia ...
- [翻译]扩展C#中的异步方法
翻译自一篇博文,原文:Extending the async methods in C# 异步系列 剖析C#中的异步方法 扩展C#中的异步方法 C#中异步方法的性能特点. 用一个用户场景来掌握它们 在 ...
- 第十一周Java学习总结。
java UI 图形界面知识梳理: ATM: 在整个AWT包中提供的所有工具类主要分为以下3种. (1)组件:Component. (2)容器:Container. (3)布局管理器:LayoutMa ...
- CopyOnWriteArrayList使用
1.在遍历操作数量大大超过可变操作是(add,set等等)使用.原因是其可变操作是通过对底层数据进行一次新的复制来实现的. 2.迭代器创建后,其不会反应列表的添加.移除或更改.其迭代器是”快照“风格的 ...
- 石川es6课程---3、变量let和常量const
石川es6课程---3.变量let和常量const 一.总结 一句话总结: let非常好用,尤其是let的块级作用域可以解决之前要(function(){})()立刻执行函数做的块级作用域 1.js中 ...
- CentOS 7下载
CentOS 7官方下载地址:https://www.centos.org/download/ 转载https://blog.csdn.net/yxwmzouzou/article/details/7 ...