一、数组定义

定义:数组是一个固定长度的,包含了相同类型数据的 容器

二、声明数组

int[] a; 声明了一个数组变量。

[]表示该变量是一个数组

int 表示数组里的每一个元素都是一个整数

a 是变量名

但是,仅仅是这一句声明,不会创建数组

有时候也会写成int a[]; 声明的过程这种写法没有什么区别,不过考虑规范和性能,有一些区别,建议采用第一种写法。(记得以前看过的《疯狂Java讲义》和菜鸟教程的Java部分里有提到,两种写法会造成一些规范或者性能上的区别的)

public class HelloWorld {

public static
void main(String[] args) {

// 声明一个数组

int[] a;

}

}

三、创建数组

创建数组的时候,要指明数组的长度。

new int[5]

引用概念:

如果变量代表一个数组,比如a,我们把a叫做引用

与基本类型不同

int c = 5; 这叫给c赋值为5

声明一个引用 int[] a;

a = new int[5];

让a这个引用,指向数组

public class HelloWorld {

public static
void main(String[] args) {

//声明一个引用

int[] a;

//创建一个长度是5的数组,并且使用引用a指向该数组

a = new
int[5];

int[] b = new
int[5]; //声明的同时,指向一个数组

}

}

四、访问数组

数组下标基0

下标0,代表数组里的第一个数

public class HelloWorld {

public static
void main(String[] args) {

int[] a;

a = new
int[5];

a[0]= 1;  //下标0,代表数组里的第一个数

a[1]= 2;

a[2]= 3;

a[3]= 4;

a[4]= 5;

}

}

五、数组长度

.length属性用于访问一个数组的长度

数组访问下标范围是0到长度-1

一旦超过这个范围,就会产生数组下标越界异常

public class HelloWorld {

public static
void main(String[] args) {

int[] a;

a = new
int[5];

System.out.println(a.length); //打印数组的长度

a[4]=100; //下标4,实质上是"第5个",即最后一个

a[5]=101; //下标5,实质上是"第6个",超出范围 ,产生数组下标越界异常

}

}

六、练习--数组最小值

题目:

首先创建一个长度是5的数组

然后给数组的每一位赋予随机整数

通过for循环,遍历数组,找出最小的一个值出来

0-100的 随机整数的获取办法有多种,下面是参考办法之一:

(int) (Math.random() * 100)

注:上面一行代码中,Math.random() 会得到一个0-1之间的随机浮点数,然后乘以100,并强转为整型即可。

public class HelloWorld {

public static
void main(String[] args) {

int[] a = new
int[5];

a[0] = (int) (Math.random() * 100);

a[1] = (int) (Math.random() * 100);

a[2] = (int) (Math.random() * 100);

a[3] = (int) (Math.random() * 100);

a[4] = (int) (Math.random() * 100);

System.out.println("数组中的各个随机数是:");

for (int i = 0; i < a.length; i++)

System.out.println(a[i]);

System.out.println("本练习的目的是,找出最小的一个值: ");

}

}

官方答案:

public class HelloWorld {

public static
void main(String[] args) {

int[] a = new
int[5];

a[0] = (int) (Math.random() * 100);

a[1] = (int) (Math.random() * 100);

a[2] = (int) (Math.random() * 100);

a[3] = (int) (Math.random() * 100);

a[4] = (int) (Math.random() * 100);

System.out.println("数组中的各个随机数是:");

for (int i = 0; i < a.length; i++)

System.out.print(a[i] + " ");

System.out.println();

int min = 100;

for (int i = 0; i < a.length; i++) {

if(  a[i] < min )

min = a[i];

}

System.out.println("找出来的最小数值是:" +min);

}

}

Java知识系统回顾整理01基础06数组01创建数组的更多相关文章

  1. Java知识系统回顾整理01基础06数组06二维数组

    一.一维数组和二维数组 这是一个一维数组, 里面的每一个元素,都是一个基本类型int int a[] =new int[]{1,2,3,4,5}; 这是一个二维数组,里面的每一个元素,都是一个一维数组 ...

  2. Java知识系统回顾整理01基础01第一个程序05Eclipse中运行Java程序

    一.打开Java文件 直接打开在 命令行Hello World 中创建的java 文件 HelloWorld.java 二.运行 点击绿色运行按钮,直接运行 在eclipse中,编译过程自动执行了 三 ...

  3. Java知识系统回顾整理01基础04操作符06三元运算符

    一.三元运算符 表达式?值1:值2 如果表达式为真 返回值1 如果表达式为假 返回值2 if语句学习链接:if语句 public class HelloWorld { public static vo ...

  4. Java知识系统回顾整理01基础06数组07数组工具类Arrays

    一.Arrays简介 Arrays是针对数组的工具类,可以进行 排序,查找,复制填充等功能. 大大提高了开发人员的工作效率. 二.Arrays提供的数组复制方法 与使用System.arraycopy ...

  5. Java知识系统回顾整理01基础03变量06变量的作用域

    一.变量根据所处的位置对应不同的名称 变量处于不同的位置,有不同的名称 名称分别是  字段,属性 参数 局部变量 不同名称的变量,其作用域是不一样的 二.字段,属性,Field 当一个变量被声明在类下 ...

  6. Java知识系统回顾整理01基础06数组03排序

    一.选择法排序 选择法排序的思路: 把第一位和其他所有的进行比较,只要比第一位小的,就换到第一个位置来 比较完后,第一位就是最小的 然后再从第二位和剩余的其他所有进行比较,只要比第二位小,就换到第二个 ...

  7. Java知识系统回顾整理01基础06数组02初始化数组

    一.分配空间与赋值分步进行 分配空间与赋值分步进行 public class HelloWorld { public static void main(String[] args) { int[] a ...

  8. Java知识系统回顾整理01基础06数组05复制数组

    数组的长度是不可变的,一旦分配好空间,是多长,就多长,不能增加也不能减少 一.复制数组 把一个数组的值,复制到另一个数组中 System.arraycopy(src, srcPos, dest, de ...

  9. Java知识系统回顾整理01基础06数组04增强型for循环

    增强型for循环在遍历一个数组的时候会更加快捷 一.增强型for循环 注:增强型for循环只能用来取值,却不能用来修改数组里的值 public class HelloWorld { public st ...

随机推荐

  1. Blazor带我重玩前端(六)

    本文主要讨论Blazor事件内容,由于blazor事件部分很多,所以会分成上下两篇,本文为第二篇. 双向绑定 概述 如图所示 当点击单项绑定的时候,MyOnewayComponent里的属性值会发生变 ...

  2. Android开发之http网络请求返回码问题集合。

    HTTP状态码(HTTP Status Code) 一些常见的状态码为: 200 - 服务器成功返回网页  404 - 请求的网页不存在  503 - 服务不可用  一.1xx(临时响应) 表示临时响 ...

  3. iOS开发知识梳理博文集

    前言 做iOS开发有3年了,从当初的小白到现在,断断续续看过很多资料,之前也写过一些博文来记录,但是感觉知识点都比较凌乱.所以最近准备抽时间把iOS开发的相关知识进行一个梳理,主要分为OC基础.UI控 ...

  4. Unity中接收服务器消息并广播事件的实现

    最近接触的项目,是一个棋牌游戏,棋牌游戏需要在前端进行一些操作,然后向服务器发送数据包,在服务器接收到客户端的数据后,会在服务端进行一系列的判断之后,然后发送给客户端一个返回数据,客户端接收到这个返回 ...

  5. java基础语法(二)

    一.运算符 算数运算符 算数运算符用在数学表达式中,它们的作用和在数学中的作用一样. 操作符 描述 例子 + 两数相加 1+1=2 - 两数相减 2-1=1 * 两数相乘 1*1=1 / 两数相除 1 ...

  6. vue mixin混入

    基本结构 export default { data() { return {} }, computed: { }, methods: { }, filters: { }, created() { } ...

  7. 小程序开发-基础组件icon/text/progress入门

    小程序的基础组件--基础内容 基础内容分为三大组件: 1. icon--图标 index.wxml <view class="group"> <block wx: ...

  8. C#通过Com串口进行Barcode Printer

    前言 工作中有遇到Barcode打印的需求,最开始是通过打印机型号找到对应的打印机,再进行操作,但是需要匹配的打印机型号太多,而且不定,所以处理起来太过麻烦. 后面通过找到通过串口找到打印机,直接传输 ...

  9. 从架构到部署,全面了解K3s

    Kubernetes无处不在--开发者的笔记本.树莓派.云.数据中心.混合云甚至多云上都有Kubernetes.它已然成为现代基础设施的基础,抽象了底层的计算.存储和网络服务.Kubernetes隐藏 ...

  10. Java数据类型之Cache模式

    1.关于Java数据类型 基本数据类型 基本数据类型有8种,每种基本数据类型都有对应的引用类型. 类型 描述 长度 可表示数据 包装类型 boolean 布尔型 1 true.false Boolea ...