5-数组分类及介绍

1.基本数据类型元素的数组-(静态)

byte,short,int,long,flaot,double,char

格式:

数据类型[] array=new 数据类型[n];//默认初始化为0

数据类型[] array=new 数据类型[]{x1,x2,x3,x4};

特别注意char的是单引号

2.基本数据类型的封装类型的数组-API-(动态)

 // 创建集合
        ArrayList<String> sites = new ArrayList<String>();//
        sites.add("Google");
        sites.add("Runoob");
        sites.add("Taobao");
        sites.add("Zhihu");

for-each只能打印内容,不能输出索引同迭代器

 举例:

for(String str:strList) {
System.out.print(str);
}

2.1记:正如其名(英文名)

ArrayList 和 LinkedList 的最明显的区别:

ArrrayList底层的数据结构是数组,支持随机访问。

LinkedList 的底层数据结构是双向循环链表,不支持随机访问。

底层数据结构笔记后面写。

2.2内存计算

Character.SIZE=8,为bit数

求字节数为Character.SIZE/8;

其他基本数据类型的类似取用;

求内存大小就是=长度*相应封装基本数据类型的值/8B(字节)

长度*相应封装基本数据类型的值bit

3.引用数据类型的数组以及串

数组

格式:

String

StringBuilder(静态)

StringBuffer(动态)

String[] array=new String[n];

StringBuilder sbd= new StringBuilder(n);

StringBuffer sBuffer = new StringBuffer("a"); 

sBuffer.append("b");

...

引用数据类型 的比较内容为.equals

串的是charAt(i)==’x‘;

 4.数组的介绍

* 数组的概念:可以看做是一个容器,用来装很多东西
 *      可以存储一组相同数据类型的容器,开辟一组连续相同的空间用来存储相同类型的数据
 *      一个班级有20个人
 *      String s = "";
 *      int b = 330;
 *      int  a = 10;
 *
 *      栈区 -- 普通/局部变量
 *      堆区 -- 对象--成员变量
 *      方法区/永久区
 *
 *
 * 数组的定义的几种方式:
 *      1.边声明边指定长度
 *      类型[]  数组名 =  new  类型[指定长度];
 *      例如:int[]  array  = new int[10];
 *      2.快速声明和赋值
 *      类型[]  数组名  =  {值1,值2,值3....};
 *      例如:int[]  array  = {10,20,30};
 *      3.边声明边赋值
 *      类型[]  数组名 = new  类型[]{值1,值2,值3,...};
 *      例如:int[]  array = new int[]{10,20,30};
 *
 * 数组的特点:
 *      1.数组是有索引/下标的,从0开始
 *      2.数组是引用数据类型
 *      3.只能存储一组相同的数据类型的元素,不能存储不同类型的数据
 *      4.数组的长度是固定不变的
 *      5.不能访问超出数组定义的长度范围
 *      6.不能给超过数组的长度进行赋值
 *      7.数组是存储在堆区中的,所以系统会赋予默认值
 *          int  0
 *          double 0.0
 *          char \u0000
 *          boolean  false
 *          String  null
 *      8.可以定义任意类型的数据,引用类型/基本类型
 *      9.数组不能(用数组名)二次赋值,用数组名带索引才可
 *
 *
 * 数组的遍历:
 *
 * 数组的赋值:
 *      数组名[下标] = 值1;
 *      array[0] = 10;
 *      静态赋值法:直接赋值
 *      动态赋值法:通过用户输入赋值
 *
 * 数组的属性:length长度
 * 数组的使用:
 *      数组名[下标]
 * 数组工具类:Arrays
 *      用来方便进行操作数组提供的一个工具类,JavaAPI
 *      数组-排序,查找,拷贝,遍历

5.常用API-Arrays.方法

*  Arrays类名.方法名();
 *  static int binarySearch(int[] a, int key) 二分查找方法,直接指定查找某个元素
 *static int binarySearch(int[] a, int fromIndex, int toIndex, int key) 从指定位置范围查找元素
 *static int[] copyOf(int[] original, int newLength) 复制几个元素,成为一个新的数组
 * static int[] copyOfRange(int[] original, int from, int to)复制指定范围的元素
 * static void fill(int[] a, int val)填充值到数组中
 *static void fill(int[] a, int fromIndex, int toIndex, int val)填充值到指定范围的数组中
 * static void sort(int[] a)从小到大的排序
 * static void sort(int[] a, int fromIndex, int toIndex)  从指定范围做一个排序
 * static String toString(int[] a)  转成字符串的形式输出每个元素

API下载

(1条消息) JavaAPI文档中文版.zip_javaapi文档中文版-其它文档类资源-CSDN文库https://download.csdn.net/download/weilaidedakejilu/15422062

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值