今天我学习了Java当中数组方面的知识,它C,C++里面的数组形式可是大有不同啊。接下来让我介绍一下这方面的知识以及自己学习之后的感受吧。
Java当中数组的声明与开辟:
数组类型 [] 数组名称 = new 数组类型[数组长度];(一维数组)
比如:int[] data = new int[10];
数据类型 对象数组[][] = new 数据类型[行个数][列个数];(二维数组)
比如:int data[][] =new int[8][7];
或者可以:
数组类型[] 数组名称 ={数组元素};
比如:int[] data ={1,2,2,3,4,5}; //其长度为6;
数据类型 对象数组[][] = {
{…},{…},{…}};
如果说我们已经定义了一个长度为6的数组,但是我们又想塞进去7个元素,这个时候为了避免数组越界,我们可以重新开辟一个新的数组:data =new int[7];
在上面我们又提到了数组类型,那么数组有哪几种类型呢?我告诉你,不,老师说,数组有八种类型:int,double,char,byte,long,boolean,float,short.
然后呢,我们又对数组排序这方面进行了学习,感觉原理和C++当中的原理一样,正所谓万变不离其宗,是吧。咱们就一起来稍微谈谈大家所熟知的冒泡排序和快速排序吧。
冒泡法演示:
很简单,用到的很少,据了解,面试的时候问的比较多!
将序列中所有元素两两比较,将最大的放在最后面。
将剩余序列中所有元素两两比较,将最大的放在最后面。
重复第二步,直到只剩下一个数。
设置循环次数。
设置开始比较的位数,和结束的位数。
两两比较,将最小的放到前面去。
重复2、3步,直到循环次数完毕。
int[] a={10,9,4,6,2,8,3,7,1,5};
String act = e.getActionCommand();
if("冒泡排序法".equals(act))
for(int i=0;i<a.length;i++)
for(int j=i+1;j<a.length;j++)
{
if(a[i]>a[j])
{
int temp=a[i];
a[i]=a[j];