循环嵌套

循环结构中包含完整的循环结构。

注意:

循环嵌套不限层次

各种循环语句都可以互相嵌套

内层循环中出现的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:循环问题 / 数组的更多相关文章

  1. *使用while循环遍历数组创建索引和自增索引值

    package com.chongrui.test;/* *使用while循环遍历数组 *  *  * */public class test {    public static void main ...

  2. 关于for循环删除数组内容出现的问题

    昨天用for循环进行数组去重的时候出现的问题, 首先,用双重for循环把前一个和所有后面的元素进行比较,如果相等则删除. 但是,如果数组里面有三个以上连续相等的元素的时候,就会出现问题. var ar ...

  3. JavaScript 中 for in 循环和数组的问题

    本文由 伯乐在线 - ElvisKang 翻译,进林 校稿.未经许可,禁止转载!英文出处:adripofjavascript.com.欢迎加入翻译小组. JavaScript的for…in循环用于迭代 ...

  4. JavaScript基础精华03(String对象,Array对象,循环遍历数组,JS中的Dictionary,Array的简化声明)

    String对象(*) length属性:获取字符串的字符个数.(无论中文字符还是英文字符都算1个字符.) charAt(index)方法:获取指定索引位置的字符.(索引从0开始) indexOf(‘ ...

  5. swift基本用法-for循环遍历,遍历字典,循环生成数组

    // Playground - noun: a place where people can play import UIKit //--------------------------------- ...

  6. SAS 循环与数组

    SAS 循环与数组 SAS提供了循环语句以满足在编程中需要多次执行相同操作的情 况.有时还需要对不同的变量执行相同的操作,此时可定义SAS数组,并通过数组名和下标来引用这些变量. 1 循环 SAS循环 ...

  7. PHP(方法 函数 循环 和 数组 查找)

    循环 和 数组 查找 顺序查找 二分法查找 冒泡排序 方法 函数 定义:一堆代码的集合叫做函数(满足条件下“一堆”) 语法,定义,调用,参数列表(形参,实参),返回值 两种方法: function 方 ...

  8. js循环遍历数组

    一维数组的遍历 <script> //循环遍历数组 var animals = ["cat",'dog','human','whale','seal']; var an ...

  9. for循环遍历数组(数组1)

    package com.mon10.day24; import java.util.Scanner; /** * 类说明 :计算学生的总成绩和平均分 * @author 作者 : chenyanlon ...

随机推荐

  1. spring 视图解析 ——InternalResourceViewResolver

    原文:https://www.cnblogs.com/lyj-gyq/p/8963885.html Spring自带了13个视图解析器,能够将逻辑视图名转换为物理实现 首先将会介绍 InternalR ...

  2. 找到并更改启动时间(timeout)

    centos7更改引导项等待时间 centos7已经不用grub,改用grub2. [ root]# vi /boot/grub2/grub.cfg 找到并更改启动时间(timeout) [root] ...

  3. 【leetcode】1271. Hexspeak

    题目如下: A decimal number can be converted to its Hexspeak representation by first converting it to an ...

  4. TCP如何保证可靠传输

    TCP 协议如何保证可靠传输   一.综述 1.确认和重传:接收方收到报文就会确认,发送方发送一段时间后没有收到确认就重传. 2.数据校验 3.数据合理分片和排序: UDP:IP数据报大于1500字节 ...

  5. JPA 开发写SQL时候遇见的困难点

    官方文档 https://docs.spring.io/spring-data/jpa/docs/1.11.16.RELEASE/reference/html/#repositories.specia ...

  6. [翻译]扩展C#中的异步方法

    翻译自一篇博文,原文:Extending the async methods in C# 异步系列 剖析C#中的异步方法 扩展C#中的异步方法 C#中异步方法的性能特点. 用一个用户场景来掌握它们 在 ...

  7. 第十一周Java学习总结。

    java UI 图形界面知识梳理: ATM: 在整个AWT包中提供的所有工具类主要分为以下3种. (1)组件:Component. (2)容器:Container. (3)布局管理器:LayoutMa ...

  8. CopyOnWriteArrayList使用

    1.在遍历操作数量大大超过可变操作是(add,set等等)使用.原因是其可变操作是通过对底层数据进行一次新的复制来实现的. 2.迭代器创建后,其不会反应列表的添加.移除或更改.其迭代器是”快照“风格的 ...

  9. 石川es6课程---3、变量let和常量const

    石川es6课程---3.变量let和常量const 一.总结 一句话总结: let非常好用,尤其是let的块级作用域可以解决之前要(function(){})()立刻执行函数做的块级作用域 1.js中 ...

  10. CentOS 7下载

    CentOS 7官方下载地址:https://www.centos.org/download/ 转载https://blog.csdn.net/yxwmzouzou/article/details/7 ...