J**a怎么解析命令行参数

时间:2021.11.20 发布人:faye012

J**a怎么解析命令行参数

已解决问题

谷歌faye012用户在2021.11.20提交了关于“海信J**a怎么解析命令行参数”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2025-02-27T21:39:18。希望大家能够帮助她。

详细问题描述及疑问:期待您的答案,真心佩服你,谢谢 !

希望以下的回答,能够帮助你。

第1个回答

用户名:匿名用户  

用惯了控制台的j**a程序之后,最印象深刻的是其的简单与快捷,虽没有图形界面那样吸引人的眼球,但却也足以迷倒众生。那么j**a命令行参数有哪些呢?跟gkstk小编一起来学习吧!

控制台程序的运行少不了要通过控制台来传递参数,譬如:

Sh代码

ls-la

这是shell脚本的常用命令,其就是通过后置参数来传递相关信息。UNIX环境为C语言中提供了getopt()这样的函数可以解析后置参数,这个函数是很实用很强大的,但J**a就(我Google了一下,倒没有怎么找出来)。大概是这个功能对J**a来说太不足挂齿了吧,但总得有个解决方法才行。

下面就是一个代码实例,用以说明。

这个实例运行的结果是运行在控制台,并允许可选的输入参数:

Sh代码

j**aTestOpt-i89-b-sTestString

那么就会设置几个prarameter的值

J**a代码

publicclassTestOpt{

publicstaticvoidmain(String[]args){

/*

*这里先取默认值,因为不是所有参数都会被用户提供

*/

booleanprarameter1=false;

intprarameter2=0;

Stringprarameter3="";

/*

*设置一个offset变量,用来**相关信息

*/

intoptSetting=0;

for(;optSetting

if("-b".equals(args[optSetting])){

prarameter1=true;

}elseif("-i".equals(args[optSetting])){

prarameter2=Integer.parseInt(args[++optSetting]);

}elseif("-s".equals(args[optSetting])){

prarameter3=args[++optSetting];

}

}

/*

*这里我只是打印出来相关的设置信息,具体的行为肯定是要自己取定义打

*/

System.out.println(prarameter1);

System.out.println(prarameter2);

System.out.println(prarameter3);

}

}

这种类似的方法估计应该有很多吧,但这个应该算是比较轻量级的。当然若参数非常多(同什得进行验输入)