java初学者编程问题[求助],
//输入整数将整数反相打印.比如输入8000.输出0008import java.io.*;
public class xt3
{
static BufferedReader keyboard=new BufferedReader(new InputStreamReader(System.in));
public static void main(String[] args)throws IOException
{
int num;
int longth;
String leng;
System.out.print("请输入一个整数:");
leng=keyboard.readLine();
longth=leng.length();
for(num=longth;num>=0;num--)
{
System.out.print(leng.substring((longth-2),longth));
longth--;
}
}
}
编译出错
----------------解决方案--------------------------------------------------------
main()的括号右面throws之间要有空格
----------------解决方案--------------------------------------------------------
不是空格的问题
编译可以通过!
运行时出错
010000Exception in thread "main" java.lang.StringIndexOutOfBoundsException: Stri
ng index out of range: -1
at java.lang.String.substring(String.java:1438)
at xt3.main(xt3.java:15)
----------------解决方案--------------------------------------------------------
楼主:编译出错
第3楼:编译可以通过!运行时出错
真是........
你leng只是一个String类型的指针而已,并没有给leng分配空间
自然leng=keyboard.readLine();就会出现String index out of range: -1异常啦
----------------解决方案--------------------------------------------------------
问题解决并不像楼上说的问题 import java.io.*; import java.lang.*; public class xt3 { static BufferedReader keyboard=new BufferedReader(new InputStreamReader(System.in)); public static void main(String[] args)throws IOException { int num; int longth; String leng; System.out.print("请输入一个整数:"); leng=keyboard.readLine(); longth=leng.length(); for(;longth>0;longth--)
{ System.out.print(leng.substring((longth-1),longth)); } } }
----------------解决方案--------------------------------------------------------
恩~对,我错了!
----------------解决方案--------------------------------------------------------
问题终于解决了……
----------------解决方案--------------------------------------------------------
----------------解决方案--------------------------------------------------------