码迷,mamicode.com
首页 > 编程语言 > 详细

3.15 数组的操作5基本查找

时间:2015-09-02 09:32:43      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:

/*
需求:数组元素查找(查找指定元素第一次在数组中出现的索引)

分析:
	A:定义一个数组,并静态初始化。
	B:写一个功能实现
		遍历数组,依次获取数组中的每一个元素,和已知的数据进行比较
		如果相等,就返回当前的索引值。
*/
class ArrayTest5 {
	public static void main(String[] args) {
		// 定义一个数组,并静态初始化
		int[] arr = { 200, 250, 38, 888, 444 };

		// 需求:我要查找250在这个数组中第一次出现的索引
		int index = getIndex(arr, 250);
		System.out.println("250在数组中第一次出现的索引是:" + index);

		int index2 = getIndex2(arr, 250);
		System.out.println("250在数组中第一次出现的索引是:" + index2);

		int index3 = getIndex2(arr, 2500);
		System.out.println("2500在数组中第一次出现的索引是:" + index3);
	}

	/*
		需求:查找指定数据在数组中第一次出现的索引
		两个明确:
			返回值类型:int
			参数列表:int[] arr,int value
	*/
	public static int getIndex(int[] arr, int value) {
		// 遍历数组,依次获取数组中的每一个元素,和已知的数据进行比较
		for (int x = 0; x < arr.length; x++) {
			if (arr[x] == value) {
				// 如果相等,就返回当前的索引值。
				return x;
			}
		}

		// 目前的代码有一个小问题
		// 就是假如要查找的数据在数组中不存在,那就找不到,找不到,就对应的返回吗?
		// 所以报错。

		// 只要是判断,就可能是false,所以要细心。

		// 如果找不到数据,一般返回一个负数即可,而且是返回-1
		return -1;
	}

	public static int getIndex2(int[] arr, int value) {
		// 定义一个索引
		int index = -1;

		// 有就修改索引值
		for (int x = 0; x < arr.length; x++) {
			if (arr[x] == value) {
				index = x;
				break;
			}
		}

		// 返回index
		return index;
	}
}


3.15 数组的操作5基本查找

标签:

原文地址:http://my.oschina.net/u/2001589/blog/500478

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!