A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

import java.util.Scanner;
class Demo {
        public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                int[] arr = {1,2,4,3,5,6};
                int d = sc.nextInt();
                int index = getIndex(arr,d);
                System.out.println(index);

        }
        public static int getIndex(int[] arr,int value){
                for (int i = 0 ;i < arr.length  ;i++ ) {
                        if (arr[i] == value) {
                                return i;
                        }
                }
                return 0;
        }
}

这是一段根据元素查找角标的代码,理解的晕晕乎乎的,尤其是getIndex这段方法,传的两个参数都是什么意思?哪位大神能帮忙全面解释解释


3 个回复

倒序浏览
getIndex 这个方法是 遍历获取数组中 value 对应的 索引值。
如果 value 不存在 则返回0
回复 使用道具 举报
import java.util.Scanner;               //导入scanner包,这个是用来键盘输入的包
class Demo {
        public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);      //建立Scanner对象,一会用来接收键盘输入的东东
                int[] arr = {1,2,4,3,5,6};     //定义一个int型数组arr,初始值为大括号里的数
                int d = sc.nextInt();       //将键盘输入的一个int型数赋值给int型变量d

                //调用getIndex方法,对传入的arr和d进行操作,这个方法具体内容在下面
                //这个方法会返回一个值,也就是算出一个int型的数来,这个数赋值给index,然后输出index
                int index = getIndex(arr,d);
                System.out.println(index);

        }
        public static int getIndex(int[] arr,int value){    //这就是getIndex方法
                for (int i = 0 ;i < arr.length  ;i++ ) {           //遍历arr数组。i每次加1
                        if (arr[i] == value) {                           //如果数组中某个元素等于value(也就是你传进来的d)
                                return i;      //那么就返回(得到)这个数的索引(下角标),也就是把这个i赋值给index
                        }
                }
                return 0;//否则就返回0,这里其实应该是-1,因为如果你要找的正好是索引为0的元素,这就冲突了
        }
}
回复 使用道具 举报
放养的饼干 发表于 2016-1-16 16:26
import java.util.Scanner;               //导入scanner包,这个是用来键盘输入的包
class Demo {
        ...

66666666666
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马