java菜鸟的成长历程 数组
来源:互联网 发布:js 遍历数组 编辑:程序博客网 时间:2024/05/16 11:51
一.概念
1.程序=算法+数据结构
(1)算法:解决问题的步骤即流程;
(2)数据结构:把数据按照特定的某种结构来保存,设计合理的数据结构是解决问题的前提;好的数据结构导致好的算法;
2.数组是最基本的一种数据结构
3.数组是相同数据类型的元素组成的集合;元素按线性顺序排列(“一个跟一个”)可以通过元素所在位置的顺序号(下标)做标识访问每个元素。
二.数组声明
1.数据类型 [] 数组名=new 数据类型[大小];
例:int [] arr=new int [4];//arr为数组类型变量(引用)
2.int [] arr 和int arr []两种写法均可
三.数组初始化
1.数组一new就有初始值:byte,short,int,long,char为0;double,float为0.0;boolean为false;
2.数组声明的同时初始化:int [] arr={2,3,4,5};
3.先声明后初始化: int [] arr; arr=new int[]{2,3,4,5};
四.数组
1.通过数组的length属性可以获取数组长度;
2.数组中的元素通过下标的方式访问;
3.遍历数组;
int [] arr=new int[]{2,3,4,5,6,7};
for(inti=0;i<arr.length,i++){
System.out.println(arr[i]);
}
4.随机数:
Math.random(); 随机生成0~1中的数,包含0不包含1;其余随机范围在此基础上
5.数组的复制
(1)System.arraycopy(a1,b,a2,c,d);
a1:源数组 b:源数组中起始位 a2:目标数组 c:目标数组起始位 d:要复制的数组元素的数量
(2)Arrays.copyOf:
类型 [] newArray=Arrays.copyOf(oldArray,newLength);//不及上面灵活
*用于数组扩容:int [] a={10,20,30,40};
a=Arrays.copyOf(a,a.length+1);
第一个a:扩展后的数组; 第二个a:原数组; 第二个参数:扩展后的长度;
6.数组的排序:将数组元素从大到小或从小到大的排列
(1)Arrays.sort();//最简方法
(2)冒泡排序: int [] arr={99,33,45,5,56};
①第一轮:
99与33比 换 33 99 45 5 56
99与45比 换 33 45 99 5 56
99与5比 换 33 45 5 99 56
99与56比 换 33 45 5 56 99 ----->冒出99
②第二轮
33与45比 不换
45与5比 换 33 5 45 56 99
45与56比 不换 ----->冒出56
③第三轮
33与 5比换 5 33 45 56 99
33与45比不换 ----->冒出45
④第四轮
5与33比 不换 ------>冒出33
分析:(1)5个数要分4轮
for(inti=0;i<arr.length-1;i++){ }
(2)比较:i=0,4次;i=1,3次;i=2,2次;i=3,1次;
for(int j=0;j<arr.length-1-I,j++){ }
综合:
for(int i=0;i<arr.length-1;i++){
for(int j=0;j<arr.length-1-I,j++){
if(arr[j]>arr[j+1]){
int t=arr[j];
arr[j]=arr[j+1];
arr[j+1]=t;
}
}
}
- java菜鸟的成长历程 数组
- java小菜鸟的成长历程
- java菜鸟成长历程 变量
- java菜鸟成长历程 语法结构
- java菜鸟成长历程 对象和类
- MVC--菜鸟的成长历程20150720
- 开通博客,记录菜鸟的成长历程
- Java菜鸟的成长
- 了解Java并学会创建Java项目(一个菜鸟的成长历程)
- JAVA高手的成长历程
- JAVA高手的成长历程
- JAVA高手的成长历程
- java高手的成长历程
- java高手的成长历程
- java高手的成长历程
- java的成长历程3
- 菜鸟的JAVA修炼历程:
- java菜鸟的学习历程
- 老司机带你走进Core Animation
- SeaJS从入门到原理
- Android 瀑布流
- mongoDB In-Memory Storage Engine
- 二进制思想以及数据的存储
- java菜鸟的成长历程 数组
- 当众责备
- jeebbs-src-v7.0版导入myeclipse步骤说明(开源论坛系统)
- [李景山php]每天laravel-20161114|FileViewFinder-2.php
- 2016-9-12
- 频率、波长、传输距离、传输速率之间的关系总结
- 如何优化tomcat配置(从内存、并发、缓存4个方面)优化
- 基于Gulp的前端自动化工程搭建
- Kubernetes容器集群中的日志系统集成实践