数组概念

  是一种容器,能够存放多个数据值

特点

  多个数据值类型必须统一

  是一种引用数据类型

  程序运行时,数组长度不可改变

数组初始化

  动态初始化格式

    数据类型[] 数组名称 = new 数据类型[数组长度]

  静态初始化格式

    数据类型[] 数组名称 = new 数据类型[]{元素1,元素2,...}

  省略初始化格式:

    数据类型[] 数组名称 = {元素}

Java虚拟机内存分化

  1.栈(Stack)

    存放的都是方法中的局部变量,方法的运行一定是在栈中

    局部变量:方法的参数,或是方法{}中的内部变量

    作用域:一旦超出作用域,立刻从栈中消失

  2.堆(Heap)

    凡是new出来的东西,都存放在堆中

    堆内存里面的东西都有一个地址值:16进制

    堆里面的数据都有默认值

      整型  0

      浮点型  0.0

      字符型  \u0000

      布尔型  false

      引用型  null

  3.方法区(Method Area)

    存储.class相关信息,包含方法的信息

  4.本地方法栈(Native Method Stack)

    与操作系统相关

  5.寄存器(pc Register)

    与CPU相关

一个数组内存图

  

两个数组内存图

  

两个变量指向一个数组

  

获取数组长度

  数组名称.length

数组越界异常

  访问数组元素时,索引编号并不存在。ArrayIndexOutOfBoundException.

空指针异常

  数组必须进行new初始化才能使用其中的元素,如果只是赋值了一个null,没有进行new的初始化,就会报空指针异常

数组遍历

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

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

  }

数组获取最大值元素

     int[] array = new int[]{1, 2, 15, 30, 40, 50, 6};

  int max_num = array[0];

  for (int i = 1; i < array.length; i++) {
    if (array[i] > max_num) {
    max_num = array[i];
    }
  }
  System.out.println(max_num);

数组反转

  int[] array = {10, 20, 30, 40, 50};
  for (int min = 0,max = array.length - 1;min < max;min++,max--){
    int temp = array[min];
    array[min] =array[max];
    array[max] = temp;
  }
  for (int i = 0; i < array.length; i++) {
  System.out.println(array[i]);
  }

数组可以作为方法的参数

向方法传递的是数组的地址值

方法想返回多个返回值,可使用数组作为返回值类型即可

												

java-day05的更多相关文章

  1. java - day05 - Array

    /* 生成随机数组,寻找最大值 */ package day05; public class ArrayGuess { public static void main(String args[]) { ...

  2. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  3. 2017-2018-1 JAVA实验站 冲刺 day05

    2017-2018-1 JAVA实验站 冲刺 day05 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 进行工作总结 100% 齐力锋 找按钮音乐 100% 张浩林 写博客 100% ...

  4. 复制D:\\day05目录下的所有文件到D:\\copy,并将.txt文件改为.java文件。

    **解题思路: 1.首先定义一个静态的refile方法,参数传入两个文件路径 2.要复制目录下的所有文件,首先查询File类的方法,可以使用listFiles方法得到目录下的文件 3.想到这问题基本就 ...

  5. Java学习day05

    Java学习day05 [switch]属于选择结构,分支语句 语法结构: /* switch(int或string类型字面值或变量) { case int或string类型字面值或变量 : java ...

  6. day05 java JDBC案例—Android小白的学习笔记

    1.要从键盘录入用户名与密码我们需要使用Scanner类完成操作 2.接收到用户名与密码后,我们需要调用jdbc程序根据用户名与密码查询数据库 User.java package com.superg ...

  7. Java基础毕向东day05 对象与对象的区别,匿名内部类,函数的执行流程。

    1.Car c = new Car(); Car c2 = new Car(); 1> c 和 c2之间的区别? public static void main(String[] args) { ...

  8. day05 Java基础

    1.数组初始化:为数组开辟内存空间,并为每个数组元素赋予值.数组初始化方式: 方式一:动态初始化:初始化时只指定数组长度,由系统为数组分配初始值. 格式:数组类型[] 数组名称=new 数组类型[数组 ...

  9. day05<Java语言基础--数组>

    Java语言基础(数组概述和定义格式说明) Java语言基础(数组的初始化动态初始化) Java语言基础(Java中的内存分配以及栈和堆的区别) Java语言基础(数组的内存图解1一个数组) Java ...

  10. java 多线程 day05 线程范围内的数据共享

    import java.util.HashMap;import java.util.Map;import java.util.Random;/** * Created by chengtao on 1 ...

随机推荐

  1. 安装和使用pyspider框架时遇到的问题

    安装pyspider, 直接cmd中输入 pip install pyspider, 而后提示报错 从网上找到解决方法,pycurl需要根据python版本采用wheel方法安装. 下载链接为http ...

  2. Q:简单实现URL只能页面跳转,禁止直接访问

    sessionStorage 用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据,且不同标签页的session不能共享,通过此特性来控制某个页面只能通过上级页面同标签页跳转 ...

  3. 自己的php框架

    spl_autoload_register('imooc::load');当我们new的类不存在,将触发括号里的方法. is_file()判断文件是否存在.

  4. Kotlin Hello World

    { https://github.com/zhmmmm/Kotlin }

  5. delphi RTL是什么?

    第一种解释: RTL Run-Time Library,支持程序运行执行的函数库.是运行时间库,在运行时需要.Delphi的RTL包括System,SysUtils,Math三个单元RTL提供的大部分 ...

  6. usb基础知识以及枚举过程介绍

    一个USB设备有一个设备描述符,设备描述符里面决定了该设备有多少种配置,每种配置描述符对应着配置描述符:而在配置描述符中又定义了该配置里面有多少个接口,每个接口有对应的接口描述符:在接口描述符里面又定 ...

  7. 【Codeforces Round #589 (Div. 2) D】Complete Tripartite

    [链接] 我是链接,点我呀:) [题意] 题意 [题解] 其实这道题感觉有点狗. 思路大概是这样 先让所有的点都在1集合中. 然后随便选一个点x,访问它的出度y 显然tag[y]=2 因为和他相连了嘛 ...

  8. 牛客网 NOIP赛前集训营-普及组(第四场)C--部分和 (高维前缀和)

    传送门 解题思路 高维前缀和模板题.首先,求前缀和有两种方式,比如说对于求二维前缀和来说. 第一种 : for(int i=1;i<=n;i++) for(int j=1;j<=n;j++ ...

  9. LeetCode 817. Linked List Components (链表组件)

    题目标签:Linked List 题目给了我们一组 linked list, 和一组 G, 让我们找到 G 在 linked list 里有多少组相连的部分. 把G 存入 hashset,遍历 lin ...

  10. Hadoop国内主要发行版本

    Hadoop主要版本 目前国内使用的不收费的Hadoop版本主要包括以下3个: Apache hadoop Cloudera的CDH Hortonworks版本(Hortonworks Data Pl ...