数组

数组概述:是具有相同数据类型的数据的集合

数组的定义:数据类型 数组名 []

数组特点

1,数组是引用数据类型。

2,数组值用大括号,元素之间用逗号隔开,元素的个数是0-N个

3,数组长度是固定的,不能变化,数组长度通过数组的length属性访问

4,数组里面的元素是通过下标访问的,下标从开始, 数组名[下标]

5,数组在内存中是一段连续的内存空间

定义数组的几种方法

第1种,直接给出数组的值 静态的

   int [] number = {1,2,3,4,5,6,7,8,9};

 

第2种  静态的

   int [] number = new int []{1,2,3,4,5,6,7,8,9};

第3种 动态的

 int [] number = new int[20];    // 20是数组的长度,数组能存在多少个元素,每一个元素都有一个默认值
number[0] = 1 ;
number[1] = 4 ;
number[2] = 3 ;

数组的操作: 增 删 改 查

copy:将一个数组放入另一个数组中()

方法一

 int [] array={1,3,4,5,8,6};
int [] b = Arrays.copyOf(array, 5); //array:被移动的数组 //5:新数组的长度,从旧数组下标为0开始截取,如果长度超过旧数组,其他值为数组定义类型的默认值

方法二

 int array [] = { 1 ,3 ,4, 5, 8 ,6};
int [] b = Arrays.copyOfRange(array, 2, 4); // [2,4)
//将旧数组中下标为2 包含2,到下标为4 不包含4 之间的内容放入新数组中,第二个参数不能超出旧数组下标,第三个参数如果超出,其值为数组定义类型的默认值

方法三

    int array [] = { 1 ,3 ,4, 5, 8 ,6};
int [] b = new int [20];
System.arraycopy(array, 0, b, 0, array.length); // array, 0:旧数组及其索引下标,下标不能超出array的范围
//b, 0:新数组及其索引下标,下标不能超出b的范围
//array.length:旧数组长度,不能超过array.length

二维数组 & 多维数组

二维:数组里面的每一个元素都是一个数组

静态的

  int array [][] = {{1,2,23,4},{4,3,2},{2,5,6,3}};
int array [][] = new int [][] {{1,2,23,4},{4,3,2},{2,5,6,3}};

动态的

  int array [][] = new int [3][4];
array[0] = new int [] {1,2,23,4};
array[1] = new int [] {4,3,2};
array[2] = new int [] {2,5,6,3};
//动态创建时,int后的第一个括号必须初始化大小

多维:参考二维

Java学习笔记之基础语法(数组)的更多相关文章

  1. Java学习笔记之---基础语法

    Java学习笔记之---基础语法 一. Java中的命名规范 (一)包名 由多个单词组成时,所有字母小写(例如:onetwo) (二)类名和接口 由多个单词组成时,所有单词首字母大写(例如:OneTw ...

  2. java学习笔记之基础语法(一)

    1.java语言基础由关键字.标识符.注释.常量和变量.运算符.语句.函数和数组等组成. 2.1关键字 定义:被java语言赋予了特殊含义的单词 特点:关键字中所有的字母都是小写. 2.2用于定义数据 ...

  3. java学习笔记之基础语法(二)

    1.数组: 概念:同一种类型数据的集合,其实,数组就是一个容器 优点:可以方便的对其进行操作,编号从0开始,方便操作这些元素. 2,数组的格式 元素类型[]数组名=new 元素类型[数组元素个数]: ...

  4. Java学习笔记之基础语法(顺序,条件,循环语句)

    顺序结构:自上而下 条件分支选择结构: if条件语句   1,一旦某一个分支确定执行以后,其他分支就不会执行.if后面的条件必须是boolean类型   2,if  后面如果不加大括号,默认相邻的下一 ...

  5. Java学习笔记之基础语法(数据类型)

    8种基本数据类型    整型:   byte[1字节]          short[2字节]        int[4字节]         long[8字节]      1,四种整型之间的区别:申 ...

  6. Java学习笔记之---方法和数组

    Java学习笔记之---方法与数组 (一)方法 (1)什么是方法? 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 (2)方法的优点 使程序变得更简短而 ...

  7. java学习笔记之基础篇

    java选择语句之switch   //switch可以用于等值判断 switch (e) //int ,或则可以自动转化成int 的类型,(byte char short)枚举jdk 7中可以防止字 ...

  8. Hive学习笔记:基础语法

    Hive基础语法 1.创建表 – 用户表 CREATE [EXTERNAL外部表] TABLE [IF NOT EXISTS 是否存在] HUserInfo ( userid int comment ...

  9. JAVA学习笔记之基础概念(一)

    一.Java 简介: Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 面向对象程序设计语言和 Java 平台的总称. 由 James Gosling和同 ...

随机推荐

  1. 5.1、顺序队列(java实现)

    1.实现代码 public class SeqQueue { private final int MaxSize = 8; private int rear; //队尾指针 private int f ...

  2. 为什么使用B+Tree索引?

    什么是索引? 索引是一种数据结构,具体表现在查找算法上. 索引目的 提高查询效率 [类比字典和借书] 如果要查"mysql"这个单词,我们肯定需要定位到m字母,然后从下往下找到y字 ...

  3. 05 (OC) 二叉树 深度优先遍历和广度优先遍历

    总结深度优先与广度优先的区别   1.区别 1) 二叉树的深度优先遍历的非递归的通用做法是采用栈,广度优先遍历的非递归的通用做法是采用队列. 2) 深度优先遍历:对每一个可能的分支路径深入到不能再深入 ...

  4. Android MediaPlayer 播放音频

    本文链接: Android MediaPlayer 播放音频 主要介绍使用MediaPlayer播放音频的方式.关于MediaPlayer的基础知识,比如状态,可以参考Android MediaPla ...

  5. Netty源码分析 (十一)----- 拆包器之LengthFieldBasedFrameDecoder

    本篇文章主要是介绍使用LengthFieldBasedFrameDecoder解码器自定义协议.通常,协议的格式如下: LengthFieldBasedFrameDecoder是netty解决拆包粘包 ...

  6. [C++] 重载new和delete——控制内存分配

      1.new和delete表达式的工作机理      1)new表达式实际执行了三步 string *sp=new string("aaaa"); ];//string采用默认初 ...

  7. Android Studio [真机测试/开发者模式]

    一.手机设置 首先根据自己的手机型号百度打开开发者模式, 我的是vivo,设置--->更多设置-->关于手机-->软件版本号连续点击会提示开启开发者模式. 并在开发者选项里打开USB ...

  8. mybatis-generator生成数据对象

    mybatis-generator生成数据对象 步骤一:在pom文件中添加build的插件 <build> <finalName>doudou</finalName> ...

  9. win10 更新之后,软件路径被改为*

    win 10 更新到最新版之后,软件安装盘符被改为* ,导致软件打开失败,截图如下: 1. 首先先下载一个RegistryWorkshop 地址:https://sm.myapp.com/origin ...

  10. Spring boot 梳理 - 显示Springboot默认自动生成的bean

    @Autowired public ApplicationContext context; @Bean public ViewResolver freeMarkerViewResolver(){ St ...