您的位置:首页 > 编程语言 > Java开发

在eclipse和netbeans下如何向main函数传参

2015-08-20 21:33 525 查看
最近在学习java;今天遇到一个讲I/o的示例中用到main函数中的参数args;一直没有搞清楚参数是怎么传进去的;经过网上搜索资料以及反复验证,将总结的方法介绍如下:

首先:我们可以在终端上以命令行的模式来编译运行我们的程序

我用到的测试程序如下:

package io;

import java.util.regex.*;
import java.io.*;
import java.util.*;

public class DirList {
public static void main(String[] args) {
File path = new File("E:\\netbeans\\javaTest\\src\\io");
String[] list;
if(args.length == 0)
list = path.list();
else
list = path.list(new DirFilter(args[0]));
Arrays.sort(list, String.CASE_INSENSITIVE_ORDER);
for(String dirItem : list)
System.out.println(dirItem);
}
}

class DirFilter implements FilenameFilter {
private Pattern pattern;
public DirFilter(String regex) {
pattern = Pattern.compile(regex);
}
public boolean accept(File dir, String name) {
return pattern.matcher(name).matches();
}
}


首先编译代码:javac DirList.java
然后运行:java DirList

读取到目录下的文件如下所示:

Alien.java
AvailableCharSets.java
BasicFileOutput.java
Blip3.java
Blips.java
BufferedInputFile.java
BufferToText.java
build.xml
ChangeSystemOut.java
ChannelCopy.java
DirectoryDemo.java
DirList.java
DirList2.java
DirList3.java
Echo.java
Endians.java
FileLocking.java
FileOutputShortcut.java
FormattedMemoryInput.java
FreezeAlien.java
GetChannel.java
GetData.java
GZIPcompress.java
IntBufferDemo.java
LargeMappedFiles.java
LockingMappedFiles.java
Logon.java
MakeDirectories.java
MappedIO.java
MemoryInput.java
MyWorld.java
OSExecuteDemo.java
PreferencesDemo.java
RecoverCADState.java
Redirecting.java
SerialCtl.java
StoreCADState.java
StoringAndRecoveringData.java
TestEOF.java
TransferTo.java
UsingBuffers.java
UsingRandomAccessFile.java
ViewBuffers.java
Worm.java
xfiles
ZipCompress.java


然后带参数运行得
4000
到过滤后的结果:java DirLIst [ABC].*\.java

在Eclipse环境下,右键DirList.java,选择Run as--->Run configurations将主类设置为io.DirList;将Arguments设置为[ABC].*\.java后,Run即可;



在netbeans环境下,右键项目,选择设置配置-->定制,将主类设置成DirList.java,参数设置成[ABC].*\.java后,确定即可;



三种方法最后运行得到的过滤后的文件目录如下:

Alien.java
AvailableCharSets.java
BasicFileOutput.java
Blip3.java
Blips.java
BufferedInputFile.java
BufferToText.java
ChangeSystemOut.java
ChannelCopy.java
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息