数组初识

1.数组的特点:

  • 数组所有元素初始化默认值,int默认值为0

  • 数组创建后大小不可改变

  • 数组索引从0开始

  • 数组是引用类型

  • 使用索引下标访问数组元素,索引超出范围会报错

2.数组的定义: 类型[] 数组名

int[] list1 = new int[5];    //如数组初始化new int[5],指定长度
int[] list2 = new int[]{1, 2, 3, 4, 5}
int[] list3 = {1, 2, 3, 4, 5}

3.示例

        //方法1
int[] ns = new int[5]; // ns指向的数组对象时[0,0,0,0,0]
ns[0] = 68 ;
ns[1] = 79;
ns[2] = 91;
ns[3] = 85;
ns[4] = 62;
//System.out.println(ns[5]);//数组越界,java.lang.ArrayIndexOutOfBoundsException
System.out.println(ns.length);//获取数组长度 //方法2:直接指定初始化的元素,由编译器自动推算数组大小
int[] scores = new int[]{68,79,91,85,62};
//方法2可以进一步简写为 int[] scoress = {68,79,91,85,62}
System.out.println(scores.length);
        //单步执行代码
int[] ns1 = new int[5];//从下图可以看到数组的初始值全是0
int[] ns2 = new int[]{1,3,5,7,9};
int[] ns3 = {2,4,6,8,10};
int[] ns4 = ns3;
System.out.println("ns1.length:"+ns1.length);
System.out.println("ns2.length:"+ns2.length);
System.out.println("ns3.length:"+ns3.length);
System.out.println("ns3[1]:"+ns3[1]);
ns3[1] = 999;
System.out.println("ns3[1]:"+ns3[1]);
System.out.println("ns4[1]:"+ns4[1]);

4.总结:

  • 数组是同一数据类型的集合
  • 数组是引用类型。为一个对象贴上了标签,一旦没有标签指向它,会被Java垃圾回收清理掉
  • 数组元素是值类型(如int[])或引用类型(如String[])
  • 数组一旦创建大小不可变
  • 可以通过索引访问数组元素
  • 索引超出范围将报错

廖雪峰Java1-2程序基础-9数组的更多相关文章

  1. 【python】廖雪峰python教程学习--基础

     No1: 目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的 No2: 用r''表示''内部的字符串默认不转义 No3: 以'''开头,敲回车可以换行 No4: 布尔 ...

  2. 廖雪峰Java6IO编程-1IO基础-1IO简介

    1.IO简介 IO是指Input/Output,即输入和输出: Input指从外部读取数据到内存,例如从磁盘读取,从网络读取. * 为什么要把数据读到内存才能处理这些数据呢? * 因为代码是在内存中运 ...

  3. phython廖雪峰

    这是小白的Python新手教程,具有如下特点: 中文,免费,零起点,完整示例,基于最新的Python 3版本. Python是一种计算机程序设计语言.你可能已经听说过很多种流行的编程语言,比如非常难学 ...

  4. 【js】【读书笔记】廖雪峰的js教程读书笔记

    最近在看廖雪峰的js教程,重温了下js基础,记下一些笔记,好记性不如烂笔头嘛 编写代码尽量使用严格模式 use strict JavaScript引擎是一个事件驱动的执行引擎,代码总是以单线程执行 执 ...

  5. python语言特性-------python2.7教程学习【廖雪峰版】(一)

    开始学习廖雪峰的py2.7教程: 2017年6月5日12:54:28 笔记: 廖雪峰python2.7教程1.用任何编程语言来开发程序,都是为了让计算机干活.  2.Python是一种相当高级的语言. ...

  6. 到头来还是逃不开Java - Java13程序基础

    java程序基础 没有特殊说明,我的所有学习笔记都是从廖老师那里摘抄过来的,侵删 引言 兜兜转转到了大四,学过了C,C++,C#,Java,Python,学一门丢一门,到了最后还是要把Java捡起来. ...

  7. R语言基础:数组&列表&向量&矩阵&因子&数据框

    R语言基础:数组和列表 数组(array) 一维数据是向量,二维数据是矩阵,数组是向量和矩阵的直接推广,是由三维或三维以上的数据构成的. 数组函数是array(),语法是:array(dadta, d ...

  8. Java之--Java语言基础组成—数组

    Java语言基础组成-数组 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的数组,数组 ...

  9. 爬虫:把廖雪峰的教程转换成 PDF 电子书

    写爬虫似乎没有比用 Python 更合适了,Python 社区提供的爬虫工具多得让你眼花缭乱,各种拿来就可以直接用的 library 分分钟就可以写出一个爬虫出来,今天就琢磨着写一个爬虫,将廖雪峰的 ...

随机推荐

  1. (17)什么是jQuery(jq的流程和基本操作)

    jQuery就是对原生js二次封装的工具类(在jq叫构造函数) jQuery就是一堆方法的集合,jq对象就可以直接调用这些方法来完成指定的需求 使用jq的流程: 1.在HTML页面倒入jq.js文件 ...

  2. queue 的基本用法

    queue 1.back() 返回一个引用,指向最后一个元素2.empty() 如果队列空则返回真3.front() 返回第一个元素4.pop() 删除第一个元素5.push() 在末尾加入一个元素6 ...

  3. JAVA 实用插件

    一.alibaba开发规约插件 https://p3c.alibaba.com/plugin/eclipse/update 下载地址 alibaba是个优秀的公司,这个插件能很好的规范代码,推荐给大家 ...

  4. LeetCode – First Missing Positive

    Given an unsorted integer array, find the smallest missing positive integer. Example 1: Input: [1,2, ...

  5. Explicit

    Prefixing the explicit keyword to the constructor prevents the compiler from using that constructor ...

  6. 数学 它的内容,方法和意义 第二卷 (A. D. 亚历山大洛夫 著)

    第五章 常微分方程 1. 绪论 2. 常系数线性微分方程 3. 微分方程的解及应注意的几个方面 4. 微分方程积分问题的几何解释.问题的推广 5. 微分方程解的存在性与唯一性方程的近似解 6. 奇点 ...

  7. 数学沉思录:古今数学思想的发展与演变 (Mario Livio 著)

    第1章 神秘的数学 (已看) 发现还是发明 第2章 神秘学:命理学家和哲学家 (已看) 毕达哥拉斯 进入柏拉图的洞穴 第3章 魔法师:大师和异端 (已看) 给我一个支点:我将撬起地球 阿基米德重写稿 ...

  8. Debug outlook add-in (office.js) 小技巧

    这几天在使用office.js 做outlook add-in的时候出现了一个问题: 不知道运行时去调试. 这里给大家介绍两个调试add-in 的方法. office365 其他软件 add-ins ...

  9. 堆的操作(make_heap,push_heap,pop_heap,sort_heap,is_heap)

    堆不是一中sort ranges,堆中的元素不会以递增方式排列,内部以树状形式排列,该结构以每个结点小于等于父节点构成,优先队列就是以堆来实现 make_heap //版本一:用operator &l ...

  10. ThinkPHP 5.2 出 RC1 版本 RC 是什么意思呢?

    ThinkPHP 5.2 出 RC1 版本 RC 是什么意思呢? RC 的意思是软件候选版本,就是不会有很大的改变,主要还是在除错方面. 来自收集的资料1引用: Alpha:是内部测试版,一般不向外部 ...