* 一、数组的概述
* 1、数组(Array):多个相同类型数据按一定顺序排列的集合,并使用一个名字命名
* 并通过编号的方式对这些数据进行统一管理
* 2、数组相关概念:
* >数组名
* >元素
* >角标、下标、索引
* >数组的长度、元素的个数
* 3、数组特点
* 数组是有序排列的
* 数组本身属于引用数据类型的变量,但其内部元素可以是任意类型
* 创建数组对象会在内存中开辟一整块的连续空间
* 数组长度一经确定,就不能修改
* 4、数组分类
* ①按照维数:一维、二维、……
* ②按照数组元素类型基本数据类型元素的数组、引用数据类型元素的数组
* 5、一维数组的使用
* 一维数组的声明和初始化
* 如何调用数组的指定位置的元素
* 如何获取数组的长度
* 如何遍历数组
* 数组元素的默认初始化值 见ArryTest1
* 数组的内存解析
* 二、数据结构
* 1、数据与数据之间的逻辑关系:集合、一对一、一对多、多对多
* 2、数据存储结构:
* 线性表:顺序表(数组、)、链表、栈、队列
* 树形结构:二叉树
* 图形结构:
* 三、算法:
* 排序算法:
* 搜索算法:
package com.xuexi.contact;
public class ArrayTest {
public static void main(String[] args) {
//1、一维数组的声明和初始化
int num;//声明
num = 10;//初始化
int id = 1001;//声明+初始化
int[] ids; //声明,也可int ids[];
//静态初始化:数组的初始化和数组元素的赋值操作同时进行
ids = new int[] {1001,1002,1003,1004}; //赋值限定长度
//动态初始化:数组的初始化和数组元素的赋值操作分开进行
String[] names = new String[5];//5为长度
//2、如何调用数组的指定位置的元素
//数组的角标(索引)从0开始,到数组长度-1结束
names[0] = "王三";
names[1] = "李四";
names[2] = "赵五";
names[3] = "钱六";
names[4] = "孙七";
//3、如何获取数组的长度,属性:length
System.out.println( names.length);
System.out.println( ids.length);
//4、如何遍历数组
/*System.out.println(names[0]);
System.out.println(names[1]);
System.out.println(names[2]);
System.out.println(names[3]);
System.out.println(names[4]);*/
for(int i = 0;i < names.length;i++) { //循环遍历
System.out.println(names[i]);
}
}
}
* //5、数组元素的默认初始化值
* 数组元素是整型时:0
* 浮点型:0.0 char型:0(对应数值为0,而非'0')
* boolean型:false 引用数据类型:null "null"
* 6、数组的内存解析
*内存的简化结构{(栈stack):局部变量 (堆heap):new出来的结构:对象、数组
* (方法区):常量池、静态域}
* 栈(int)与堆(new)之间靠 首地址值(十六进制) 指向寻找
public class ArrayTest1 {
public static void main(String[] args) {
//5、数组元素的默认初始化值
int[] arr = new int[4];
for(int i = 0;i <arr.length;i++){
System.out.println(arr[i]);
}
System.out.println("*****************");
float[] arr1 = new float[4];
for(int i = 0;i <arr1.length;i++){
System.out.println(arr1[i]);
}
System.out.println("****************");
char[] arr3 = new char[4];
for(int i = 0;i <arr3.length;i++){
System.out.println("-----" + arr3[i]);
}
System.out.println("*****************");
boolean[] arr4 = new boolean[4];
for(int i = 0;i <arr.length;i++){
System.out.println(arr4[i]);
}
System.out.println("*****************");
String[] arr5 = new String[4];
for(int i = 0;i <arr5.length;i++){
System.out.println(arr5[i]);
}
System.out.println("*****************");
}
}