day04
- 在数组中,数据名称.length用于获取此数组的元素个数。
练习1:写出一个函数,用于打印出一个数组中的最大或者最小值。
练习2:写一个函数,对一个数组进行排序(使用冒泡排序跟选择排序)。
- 冒泡排序与选择排序在实际应用中并不多见,因为数组的值存放在堆内存中,而两者排序都是频繁的置换位置,所以在堆内存中要消耗较多的资源。特别是在数组元素较多的情况下。在实际开发中,我们一般使用Array包中已经封装好的函数sort。即Array.sort(数组名字)可以快速的进行排序。
练习3:定义一个函数,其功能是在数组中找到想要的元素,并输出其下标。
- 折半查找:只能运用于有序数组,就是使用三个变量,其中一个表示第一个下标,一个表示中间值,一个表示最后一个下标,将中间值与想要找的值进行比较,若小于要找的值,则第一个下标的值移到当前中间值的下标+1的位置,一次类推,当找不到要找的值时,即第一个下标已经大于最后一个下标时,返回-1。
- 在程序中,将一个十进制的数转换为二进制,我们可以将这个数模以2,得出模出的数,并且存储起来。然后将次数除以2,并且判断是否大于0.直到此数除以2得0,即可得出此数的二进制表示。(Java中也有已经定义好的转换方法,即Integer.toBinaryString())
- 二维数组:可以称之为数组中的数组,即可以理解,我们往数组里存的数据,还是数组。初始化方式为int[][] arr = new int[3][4].可以这么理解为,定义了一个二维数组,二维数组中有三个一维数组,每一个一维数组中有四个元素。
Int[][] arr = new int[3][];此行代码表示在二维数组中定位了三个未知长度的一维数组,且这三个一维数组未被定义,所以默认地址值为null。若此时再对这三个数组new一个一位数组,则内存中会再划分一块空间,此地址值会同时赋给二维数组中的一维数组,也就是说,当你定义的时候,内存并不是在已经分配了内存的二维数组中开辟的,而是重新开辟了另一块内存
Int[][] arr = new int[][3];这样定义,则是错误的
- 练习:int[]x,y[];x跟y分别是几维数组
新手初步学Java,正在JavaSE中,每天留下我当天学习所得跟笔记,希望大家能够多多批评与指教,促进共同进步!第四天的!
原文:http://www.cnblogs.com/yishiluo/p/4944653.html