当我运行这个java程序后发生错误。 告诉我这是什么问题。
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("================================");
for(int i=0;i<3;i++)
{
String s1=sc.next();
int x= sc.nextInt();
StringBuffer st = new StringBuffer();
int a = s1.length();
int n;
for(n=a;n<=15-a;n++)
{
s1=s1+" ";
}
st.append(s1);
if(st.charAt(15)==' ')
{ s1=s1+0+x;
st.append(s1);
}else
{ st.append(s1);}
st.toString();
System.out.print(st);
System.out.println();
}
System.out.println("================================");
}
}
答案 0 :(得分:1)
你得到的原因是因为你是在调用它而不检查“st”长度是否等于或大于15
st.charAt(15)
从
更改if(st.charAt(15)==' ')
到
if(st.length() > 15 && st.charAt(15) == ' ')