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 ...
随机推荐
- 安装驱动模块ko
1. make install 2. 3.手动加载驱动程序 [root@localhost template]# modprobe usbnet [root@localhost template]# ...
- ebay API属性
Ebay Trading API整理 纠纷相关 AddDispute:创建一个未支付纠纷 或 取消 a single line item order AddDisputeResponse:回复/关闭d ...
- Angular4.x+Ionic3 踩坑之路之 Ionic3.x pop反向传值
1.Ionic3.x 页面正向传值 关于正向传值,上一篇文章里面有讲,具体可以看这里https://segmentfault.com/a/11... 2.Ionic3.x 页面 pop反向传值,主要有 ...
- 解决c#distinct不好用的问题
当一个结合中想根据某一个字段做去重方法时使用以下代码 IQueryable 继承自IEnumerable 先举例: #region linq to object List<People> ...
- Java——静态代理、动态代理
https://blog.csdn.net/giserstone/article/details/17199755 代理的作用:业务类只需要关注业务逻辑本身,保证了业务类的重用性 一 静态代理 特点: ...
- vue启动问题(You may use special comments to disable some warnings. Use // eslint-disable-next-line to ignore the next line. Use /* eslint-disable */ to ignore all warnings in a file.)
解决vue启动出现: 在build/webpack.base.conf.js文件中,把...(config.dev.useEslint ? [createLintingRule()] : [])注释或 ...
- 使用es6新增Set函数快速数组去重
使用new Set()快速数组去重: let arr = [1, 2, 2, 3, 4, 5, 5, 5, 6] let set = new Set([...arr]) console.log([.. ...
- 在qt的QOpenGLWidget开启opengl的抗锯齿
在QOpenGLWidget的构造函数添加下面几句代码即可 QSurfaceFormat surfaceFormat; surfaceFormat.setSamples();//多重采样 setFor ...
- R_Studio(学生成绩)对数据缺失值md.pattern()、异常值分析(箱线图)
我们发现这张Gary.csv表格存在学生成绩不完全的(五十三名学生,三名学生存在成绩不完整.共四个不完整成绩) 79号大学语文.高等数学 96号中国近代史纲要 65号大学体育 (1)NA表示数据集中的 ...
- ajax报告申请添加
function reportApplyAddFun(){ $("#dlg").dialog("open").dialog("center" ...