首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在java中接受单个输入

如何在java中接受单个输入
EN

Stack Overflow用户
提问于 2014-11-08 12:04:56
回答 3查看 102关注 0票数 0

我试图通过使用代码int rs=Integer.parseInt(args[0]);获取输入,但它会引发异常ArrayOutOfBondException。请帮助我,代码如下,我只需要在命令行参数中输入一次

代码语言:javascript
运行
复制
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);
}
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-11-08 12:06:20

在运行java程序时,需要传递命令行参数。

如果不传递任何命令行参数,那么args将是空数组,即长度为0的数组。从空数组访问0th元素将引发ArrayIndexOutOfBoundsException

票数 1
EN

Stack Overflow用户

发布于 2014-11-08 12:08:00

让主方法的类名为MyClass.java,那么必须从命令行运行程序,如下所示

代码语言:javascript
运行
复制
java MyClass 12

其中12是要传递给程序的命令行参数(您可以尝试使用不同的参数)。

注:当您不传递任何参数,而是访问程序中的args时,您将看到这个异常起源于

票数 0
EN

Stack Overflow用户

发布于 2014-11-08 12:08:59

如果要使用args[0],则需要向程序传递命令行参数。如果在IDE中运行程序,则会得到异常。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26816931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档