我有一个算法,但我没有修正。如何修复?在java中应该做什么

我有一个算法,但我没有修正。如何修复?在java中应该做什么,java,string,algorithm,integer,Java,String,Algorithm,Integer,请帮帮我。如果输入为703,则必须是A、B、…..AA、AB、…、ZZ、AAA、AAB、AAC……这一行的验证外观 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 26 at example.Tester.columnNames(Tester.java:20) at example.Tester.main(Tester.java:34) 因为ypu试图从空字符串中获取colName.Cha

请帮帮我。如果输入为703,则必须是A、B、…..AA、AB、…、ZZ、AAA、AAB、AAC……

这一行的验证外观

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 26
    at example.Tester.columnNames(Tester.java:20)
    at example.Tester.main(Tester.java:34)
因为ypu试图从空字符串中获取colName.Charat12,如果输入等于13

如果你想得到这个输出A,B,C,D,E,F,G,H,I,J,K,L,M,试试这个:

colName = (position == 0 ? 'Z' : colName.charAt(position > 0 ? position - 1 : 0)) + colName;
输入

public class Test {
  static String columnNames(int n) {
    String capitalAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    return capitalAlphabet.substring(0, n);

  }

  public static void main(String[] args) throws IOException {
    Scanner in = new Scanner(System.in);
    System.out.println("sayi giriniz..");
    Integer input = in.nextInt();

    String result = columnNames(input);
    System.out.println(String.join(", ", result.split("")));
  }

}
输出

13
colName的可能副本是一个空字符串,然后尝试在非零索引处调用该字符。我想你把结果和colName搞混了好几次
13
A, B, C, D, E, F, G, H, I, J, K, L, M