我需要我的程序取一个String参数并将字符分开。 然后,我想将这些单独的字符添加到ArrayList,并打印出列表,其中各个字符位于彼此之下 这就是我所拥有的:
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) {
try{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter argument:");
String input = br.readLine();
String value = "";
ArrayList al = new ArrayList();
for(int i = 0; i < input.length(); i++){
value = "" + input.charAt(i);
al.add(value);
}
Iterator it = al.iterator();
while(it.hasNext()){
System.out.println(it.next());
it.remove();
}
}catch(IOException e){
System.out.println(e.toString());
}
}
}
参数应该来自命令行,例如: java myApp莱斯利
提前致谢
答案 0 :(得分:0)
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) {
try{
String input = String.valueOf(args[0]);//assuming there will always be an input from command line
String value = "";
ArrayList al = new ArrayList();
for(int i = 0; i < input.length(); i++){
value = "" + input.charAt(i);
al.add(value);
}
Iterator it = al.iterator();
while(it.hasNext()){
System.out.println(it.next());
it.remove();
}
}catch(IOException e){
System.out.println(e.toString());
}
}
}
试试这个
答案 1 :(得分:0)
这些参数存储在String[] args
数组中
就像VD写的......但如果有参数
If (args.length != 0) {
do something
}
编辑: 如果使用命令行运行程序,则必须先用
编译它javac pathtofile
比你可以使用
java pathtofile
答案 2 :(得分:0)
为什么你这么难?
if(input.contains("java myApp Lesley"){
window.window(); //new class where u create the window
}
答案 3 :(得分:0)
命令行参数通过其参数String[] args
传递给main方法。
因为对于调用程序的人来说,这并不总是显而易见的,如果缺少参数,那么给出提示的好方法。例如:
if (args.length == 0) {
System.out.println("Usage: myApp <Name>");
}
else {
// your code here using args[0]
}
如果您使用多个命令行参数,请相应地更改检查。