如何返回数组的元素编号



我已经编写了下面的代码,现在我需要对其进行编辑,以便它显示超过3000的结帐号码。 i.e.it 必须显示:

以下结帐花费了超过 3000.00 英镑: 结帐号码"元素编号" 结帐号码"元素编号"等

我一直在尝试几种不同的方法,但还没有成功。感谢您的帮助!

import java.util.Scanner;
public class Checkouts
{
   static final int NUMBER_OF_CHECKOUTS = 6, MAX_TAKING = 1000000;
   public static void main(String[] args)
   {
      Scanner scan = new Scanner(System.in);
      double[] checkoutList = new double[NUMBER_OF_CHECKOUTS];
  System.out.println();
  for (int index = 0; index < checkoutList.length; index++)
  {
     System.out.print("tEnter takings for checkout number ");
     System.out.print((index + 1) + ": ");
     checkoutList[index] = scan.nextDouble();
     while (checkoutList[index] < 0 || checkoutList[index] > MAX_TAKING)
     {
        System.out.print("tImpossible! - enter takings for checkout number ");
        System.out.print((index + 1) + " again: ");
        checkoutList[index] = scan.nextDouble();
     } 
  }
  System.out.println();
  double totalTakings = 0;
  for (int index = 0; index < checkoutList.length; index++)
  {
     totalTakings += checkoutList[index];
  }
  System.out.println("The total takings for the supermarket is " + totalTakings );

}}

由于您已经有一个遍历每个索引的 for 循环,我们可以在那里进行检查:

  System.out.println("The following checkouts have taken more than 3000.00 pounds:");
  for (int index = 0; index < checkoutList.length; index++)
  {
     totalTakings += checkoutList[index];
     if(checkoutList[index] > 3000.00){
         //now we can be sure the current index is the location of
         //a checkout that was > 3000.00 pounds
         System.out.println("Checkout Number: " + index);
     }
  }

最新更新