gpt4 book ai didi

java - 从命令提示符获取 java 程序中的非初始参数用户输入

转载 作者:行者123 更新时间:2023-12-01 11:11:42 26 4
gpt4 key购买 nike

我正在编写一个必须通过命令行运行的程序。它具有初始输入作为参数(java filename arg arg arg),但随后需要输入更多信息。我尝试使用基本扫描仪和 .nextLine() 但扫描仪实际上永远不会拾取字符串,并且按 Enter 键只会将我移动到下一行。

我可以使用扫描仪来完成此操作还是必须使用不同的东西?

编辑:这是我正在使用的代码部分(请注意,我还导入了正确的库):

    Scanner in = new Scanner(System.in);
boolean cont = true;
while(cont)
{
int indx;
System.out.print("Enter input: ");
String searched = in.nextLine();
if(searched.equals("esc"))
{
cont = false;
continue;
}
else
indx = binSearch(sorted,searched);
if(indx != -1)
System.out.println("'" + searched + "'" +
" was found at index: " +
indx);
else
System.out.println("'" + searched + "'" +
"was not found");
}
in.close();

}

编辑2:将2个字符串的==比较更改为.equals

编辑 3:添加了我正在使用的 binSearch 方法:

    public static int binSearch(String[] A, String word)
{
int i = 0; int j = A.length; int m;
while( i < j )
{
m = (i + j)/2;//find centerpoint
if(cSL(word,A[m]))
j = m;//move right side up
else i = m;//move left side up
}
if(A[i].equalsIgnoreCase(word)) return i;
else if(A[j].equalsIgnoreCase(word)) return j;
else return -1;
}

编辑4:所以我猜它一定是UNIX,一切都可以在cmd中运行。

最佳答案

您可以使用 .equals 方法比较字符串。这一定是问题所在。试试这个方法:

if(searched.equals("esc")) {
cont = false;
}

关于java - 从命令提示符获取 java 程序中的非初始参数用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32290040/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com