Java用户名和反向订单
问题描述:
我正在编写一个类的代码,我似乎无法找到该错误。每次我通过Java博士运行代码时,都会遇到大约15种不同的红色错误,这是我以前从未见过的。该代码应该接受用户输入并且颠倒它的顺序。任何帮助?这是代码:Java用户名和反向订单
import java.util.Scanner;
public class LoopsProgram
{
public static void main (String [] args)
{
Scanner stringScanner = new Scanner (System.in);
System.out.println ("What is your name?");
String nameOfPerson = stringScanner.nextLine();
System.out.println(nameOfPerson);
int lengthOfName = nameOfPerson.length();
char beginning = nameOfPerson.charAt(lengthOfName);
for (int i = lengthOfName-1; i > 0; i--) {
beginning = nameOfPerson.charAt(i);
System.out.print(beginning);
}
}
}
答
char beginning = nameOfPerson.charAt(lengthOfName);
- 您尝试访问第五索引,其中,因为这将有指数从0到4,这就是为什么你得到错误。
尝试此以下代码:
import java.util.Scanner;
class Test{
public static void main (String [] args)
{
Scanner stringScanner = new Scanner (System.in);
System.out.println ("What is your name?");
String nameOfPerson = stringScanner.nextLine();
System.out.println("Name : "+nameOfPerson+" & length : "+nameOfPerson.length());
int lengthOfName = nameOfPerson.length();
String result = "";
for (int i = lengthOfName-1; i >= 0; i--) {
result+=nameOfPerson.charAt(i);
}
System.out.println(result);
}
}
答
炭开头= nameOfPerson.charAt(lengthOfName);
对(INT I = lengthOfName-1; i> 0;我 - )
在Java索引从0开始,从而在最后一个字符索引将是lengthOfName-1。 第1期
因为条件(i> 0),For循环不会在索引零处包含字符。它应该是i> = 0。 第2期
+0
@halim,男人期待根本原因(我想)。 –
你可以通过这个网站。 http://javahungry.blogspot.com/2014/12/5-ways-to-reverse-string-in-java-with-example.html – halim
欢迎来到Stack Overflow!为了帮助您充分利用本网站,请阅读我们的[SO问题清单](http://meta.*.com/questions/260648/stack-overflow-question-checklist)并相应地修改您的问题。 –