簡體   English   中英

如何在Java中采用單一輸入

[英]How to take single input in java

我正在嘗試通過使用代碼int rs=Integer.parseInt(args[0]);來接受輸入int rs=Integer.parseInt(args[0]); 但是它拋出異常ArrayOutOfBondException 請幫助我下面的代碼。我只需要在命令行參數中輸入一次

package techgig;
import java.util.*;

public class Techgig {


 public static int ta[]={1,12,5,111,200,1000,10,9,6,7,4};


public static void main(String[] args) {
  Vector v = new Vector();    
    // TODO code application logic here
    System.out.println("Amount Mark has:");
    System.out.println("=============================");//here is the code
    int rs=Integer.parseInt(args[0]);
   // int rs=50;
    System.out.print("===============================");
  //int a=0;
    int count=0;
    int min=0,temp,totalamount=0;
  System.out.print("\nToys Available:{");

 for(int a=0;a<ta.length;a++)
 {
     if(a!=0)
     {
         System.out.print(",");
     }
     System.out.print(ta[a]);

 }
 System.out.print("}\n");
 System.out.println("Buy Maximum toys with maximum left");

  for(int i=0;i<ta.length;i++)
  {

  // System.out.print("\t"+ ta[i]);
       for( int j=i+1;j<ta.length;j++)
      {
          if(ta[j]<ta[i])
          {
              temp=ta[j];
              ta[j]=ta[i];
              ta[i]=temp;
          }
         // System.out.print("\t"+ ta[i]);
      }

  }

  for(int k=0;k<ta.length;k++)
  {

      totalamount=min;
     // System.out.print("\t"+ ta[k]);
      min=min+ta[k];
      if(min >rs)
      {
          break;

      }
      count=count+1;
      v.add(ta[k]);
  }

  int sav=0;
  sav=rs-totalamount;
  //System.out.println("Amount Mark has:"+rs);
  System.out.println("Output:{"+v.size()+","+sav+"}");
  System.out.println("Explanation");      
  System.out.println("Maximum number of toys="+v.size()+""+v);
  System.out.println("Saving="+sav);
}
}

您需要在運行Java程序時傳遞命令行參數。

如果您不傳遞任何命令行參數,則args將為空數組,長度為0 從空數組訪問第0個元素將拋出ArrayIndexOutOfBoundsException

讓具有您的主要方法的類的名稱為MyClass.java然后,您必須從命令行運行程序,例如

java MyClass 12

其中12是要傳遞給程序的命令行參數(可以嘗試使用其他參數)


在此處輸入圖片說明

注意:當您不傳遞任何參數而是訪問程序中的args時,您將看到此異常源

如果要使用args[0] ,則需要將命令行參數傳遞給程序。 如果從IDE運行程序,則會得到一個異常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM