程序应该由用户输入字符串并将其反转。 (例如“Hello”输入“olleH”是输出。)您可以通过运行java ReverseCL2 Hello
之类的程序来执行此操作。但是,当没有输入字符串时,它会打印ArrayOutOfIndexException
。我需要它来打印出用户应该做的事情(请在运行代码时输入一个字符串。)我已经尝试了下面的内容以及if (args[0].equals(null))
。在此先感谢您的任何帮助:)
public class ReverseCL2
{
public static void main(String[] args)
{
String s = args[0];
String rev = "";
if (args[0].isEmpty())
{
System.out.println("Input a string to be reversed");
}
else
{
for (int i=0; i<s.length(); i++)
{
rev = s.charAt(i) + rev;
}
System.out.println(rev);
}
}
}
答案 0 :(得分:1)
首先检查args.length
是否为零,即
if(args.length == 0 || args[0].isEmpty())
{
// <Handle special case however you like>
}
当ArrayIndexOutOfBoundsException
的尺寸为args[0]
时,您获得的args
是0
的结果。
答案 1 :(得分:1)
public class ReverseCL2
{
public static void main(String[] args)
{
if(args.length == 0 || args[0].isEmpty())
{
System.out.println("Input a string to be reversed");
return;
}
String s = args[0];
String rev = "";
for(int i = 0; i < s.length(); i++)
{
rev = s.charAt(i) + rev;
}
System.out.println(rev);
}
}
答案 2 :(得分:0)
将!
用于检查参数化数组值
if (!args[0].isEmpty() && args.length==0)
请参阅代码中的上一行。
public class ReverseCL2
{
public static void main(String[] args)
{
String s = args[0];
String rev = "";
if (!args[0].isEmpty() && args.length==0)
{
System.out.println("Input a string to be reversed");
}
else
{
for (int i=0; i<s.length(); i++)
{
rev = s.charAt(i) + rev;
}
System.out.println(rev);
}
}
}
答案 3 :(得分:0)
It simple arg0 is array so before get data from That check Array size
if(args.length == 0)
{
// <Show message to user >
}else{
// <write here Working code >
}
答案 4 :(得分:0)
除上述答案外,更简单的代码(阅读虎钳)将是
public static void main(String args[]) {
switch (args.length) {
case 0 : System.out.println("Input a string to be reversed");
break;
default: //your logic
}
}