数组初识

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. 《DSP using MATLAB》Problem 6.11

    代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...

  2. servlet路径映射中的完全路径匹配、目录匹配、扩展名匹配

    在servlet路径映射中,关于url-pattern的配置有三种,分别是完全路径匹配.目录匹配.扩展名匹配 其优先级分别为:完全路径匹配>目录匹配>扩展名匹配: 一.三种路径印射的区别 ...

  3. msyql开启慢查询以及分析慢查询

    慢查询的用途是用来发现执行时间长的查询语句,以便对这些语句进行优化 [mysqld] #在这里面增加,其它地方无效 #server-id=1 #log-bin=master-bin slow_quer ...

  4. 重拾C++第一天_WDS

    1.面向对象编程的三大特点:封装.继承.多态 2.C++中若不指定类中成员的访问权限默认就是private的(class默认是private的,struct默认是public的). 3.C++规范中类 ...

  5. taro 组件的外部样式和全局样式

    自定义组件对应的样式文件,只对该组件内的节点生效. 编写组件样式时,需要注意以下几点: 组件和引用组件的页面不能使用 id 选择器(#a).属性选择器([a])和标签名选择器,请改用 class 选择 ...

  6. php+js实现重定向跳转并post传参

    页面重定向跳转并post传参 $mdata=json_encode($mdata);//如果是字符串无需使用json echo " <form style='display:none; ...

  7. 查看JVM运行时参数

    1.查看JVM运行时参数 -XX:+PrintFlagsInitial -XX:PrintFlagsFinal -XX:+UnlockExperimentalVMOptions 解锁实验参数 -XX: ...

  8. C++Builder XE7 中“匿名”方法实现

    class TMyProc : public TCppInterfacedObject<TThreadProcedure> { private: String p1; String p2; ...

  9. python调用hanlp分词包手记

    python调用hanlp分词包手记   Hanlp作为一款重要的分词工具,本月初的时候看到大快搜索发布了hanlp的1.7版本,新增了文本聚类.流水线分词等功能.关于hanlp1.7版本的新功能,后 ...

  10. Spark应用HanLP对中文语料进行文本挖掘--聚类详解教程

    软件:IDEA2014.Maven.HanLP.JDK: 用到的知识:HanLP.Spark TF-IDF.Spark kmeans.Spark mapPartition; 用到的数据集:http:/ ...