Day6 一维数组

数组的作用:

如果要定义的变量太多,挨个定义太繁琐,不利于数据处理。

数组的定义:

数组是一组变量(空间),存储相同数据类型的一组数据。

声明变量就是在内存划出一块合适的空间;声明数组就是在内存划出一串连续的空间。

数组的基本要素:

标识符--数组名(类似变量名)

数组元素--数组值

元素下标:从0开始(索引,又叫目录)

元素类型--数组类型(int/double /boolean /String/...)

数组地址--数组本身的值

备注:

1、数组长度固定不变,避免数组越界

2、数组地址和数组元素并不相干

3、数组中所有元素必须是相同类型

数组的基本使用:

1.申明数组  int[  ] a;声明数组时不规定数组长度

2.分配空间  a=new int[ 5 ];告诉计算机分配5个连续的int空间

3.赋值   a[ 0 ]=8;

静态赋值:可以边申明边赋值

 也可以动态的从键盘录入信息并赋值

注意:数组通过下标来使用数据

增强for的结构:

int[] num = {1,2,3,4,5,6};
for(int i: num){
        System.out.print(num[i]);
}

----------------------------------------

int[] num = {1,2,3,4,5,6};
for(int i = 0; i < num.length; i++){
    System.out.print(num[i]);
}

一种简便写法:a.fori---for(int i=0;i<a.length;i++)

上面这两种结构意义等价

4.处理数据   a[ 0 ]=a[ ]*10;

数组的输出:

        System.out.println(Arrays.toString(b));

数组扩容:

 数组求最值:

        1.先初始化最值;

        2.循环遍历、依次与最值比较,不符合条件的,替换变量的值;

        3.循环结束后,得到的变量即为最值。

数组插入值:

        1.前提:数组本身有序

        2.插入保证不会越界

        步骤:

        1.从后向前遍历 

        2.每个值与插入的值进行比较,不符合顺序的后移   

        3.符合顺序的,在后方插入   

        4.如果从头至尾没有插入,则插入在首位

数组与内存:

栈内存:主要存放一些基本类型变量(int, short, long, byte, float, double, boolean, char),存取速度比堆内存块,存在栈内存的数据可以共享,存在栈内存的数据大小和生存周期是确定的,缺乏灵活性。

堆内存:放的对象,数组

两者区别形象的比喻:使用堆内存就象是自己动手做喜欢吃的菜肴,比较麻烦,但是比较符合自己的口味,而且自由度大。使用栈内存就象我们去饭馆里吃饭,只管点菜(发出申请)、付钱和吃(使用),吃饱了就走,不必理会切菜、洗菜等准备工作和洗碗、刷锅等扫尾工作,他的好处是快捷,但是自由度小。

缓存区(常量池):byte数据类型的值,char的asc码值,String

方法区:存储的方法的名字

おすすめ

転載: blog.csdn.net/yuanlaishidahuaa/article/details/120945220