Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
方法在java in循环中返回2个int值_Java - Fatal编程技术网

方法在java in循环中返回2个int值

方法在java in循环中返回2个int值,java,Java,**我想在循环中得到两个整数索引,并将它们发送到另一个方法,直到用户在索引1中放入-1****** public static int getIndex() { int index1, index2; do{ System.out.println("Enter the first index in list(-1 to finish): "); index1= s.nextInt();

**我想在循环中得到两个整数索引,并将它们发送到另一个方法,直到用户在索引1中放入-1******

        public static int getIndex() {
        int index1, index2;
        do{
            System.out.println("Enter the first index in list(-1 to finish): ");
            index1= s.nextInt();
            if(index1==-1) {
                System.out.println("Program ends now...");
                break;
            }
            System.out.println("Enter the second index in list: ");
            index2= s.nextInt();
        }while(true);
        return new Indexes(index1, index2);
    }
问题是如何将索引发送到其他方法? 谢谢

另一种方法是:

public static String compare(ArrayList<Worker> workers, int index1, int index2 ) {
        if(workers.toArray()[index1].equals(workers.toArray()[index2])==true)
            return "EQUALS!";
        else
            return "NOT EQUALS";
    }
使用给定参数运行该方法

正在调用的方法(getIndex())

存储在第二个方法使用的变量中


不确定我是否正确理解了这个问题,但是 您可以使用Scanner类扫描输入

import java.util.Scanner;

    public static Indices getIndex() {
        Scanner s = new Scanner(System.in);
        int index1, index2;
        do{
            System.out.println("Enter the first index in list(-1 to finish): ");
            index1 = s.nextInt();
            if(index1==-1) {
                System.out.println("Program ends now...");
                break;
            }
            System.out.println("Enter the second index in list: ");
            index2=  = s.nextInt();
        }while(true);
         return new Indices(index1, index2);
    }
最好的方法是创建自己的自定义类,该类有两个字段int1、int2,并基于index1、index2变量设置它们

class Indices{
  int point1, point2;
    public Indices(int p1, int p2){
      this.point1 = p1;
      this.point2 = p2;
    }
}
然后,你可以有两个索引,并比较他们如何你想

  Indices i1 = getIndex();
  Indices i2 = getIndex();

  compare(i1,i2);


如果计划返回
索引
类型,则应将该方法声明为
公共静态索引getIndex()
。是否要返回两个整数?为什么不返回一个包含这两个值的整数数组?…而index2需要用一些默认值初始化
int index2=-1compare(ArrayList,int,int)
方法运行一次还是每次
getIndex()
方法运行一次?
class Indices{
  int point1, point2;
    public Indices(int p1, int p2){
      this.point1 = p1;
      this.point2 = p2;
    }
}
  Indices i1 = getIndex();
  Indices i2 = getIndex();

  compare(i1,i2);