Java Can';我看不懂数字

Java Can';我看不懂数字,java,Java,所以我正在解决一个问题,需要对一些字符串进行一些转换,但我甚至不能读取字符串的数量(整数)。代码如下: import java.util.Scanner; import java.util.ArrayList; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); ArrayList<String> b

所以我正在解决一个问题,需要对一些字符串进行一些转换,但我甚至不能读取字符串的数量(整数)。代码如下:

    import java.util.Scanner;
    import java.util.ArrayList;

    public class Main {
     public static void main(String[] args) {
Scanner scan =  new Scanner(System.in);
ArrayList<String> board = new ArrayList<String>();
int num = scan.nextInt();
int num1 = 0;
String num2 = "";
String word = "";
String word1 = "";
for (int i=0; i<=num; i++) {
  word = scan.nextLine();
  if (word.length() >10) {
    num1 = word.length()-2;
    num2 = Integer.toString(num1);
    word1 = word.charAt(0) + num2 + word.charAt(word.length()-1);
    board.add(word1);
  } else {
  board.add(word);
  }
  for (i=0; i<=num; i++) {
    System.out.println(board.get(i));
  }
}
   }
    }
import java.util.Scanner;
导入java.util.ArrayList;
公共班机{
公共静态void main(字符串[]args){
扫描仪扫描=新扫描仪(System.in);
ArrayList board=新的ArrayList();
int num=scan.nextInt();
int num1=0;
字符串num2=“”;
字串=”;
字符串word1=“”;
对于(int i=0;i10){
num1=单词长度()-2;
num2=整数.toString(num1);
word1=word.charAt(0)+num2+word.charAt(word.length()-1);
董事会。添加(word1);
}否则{
添加(单词);
}

对于(i=0;i您是否打算这样做?否则,为什么内部循环要重用相同的变量i

import java.util.Scanner;
import java.util.ArrayList;

public class Main {

    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        ArrayList<String> board = new ArrayList<String>();
        int num = scan.nextInt();
        scan.nextLine();
        int num1 = 0;
        String num2 = "";
        String word = "";
        String word1 = "";
        for (int i = 0; i <= num; i++) {
            word = scan.nextLine();
            if (word.length() > 10) {
                num1 = word.length() - 2;
                num2 = Integer.toString(num1);
                word1 = word.charAt(0) + num2 + word.charAt(word.length() - 1);
                board.add(word1);
            } else {
                board.add(word);
            }
        }

        for (int i = 0; i <= num; i++) {
            System.out.println(board.get(i));
        }
    }
}
import java.util.Scanner;
导入java.util.ArrayList;
公共班机{
公共静态void main(字符串[]args){
扫描仪扫描=新扫描仪(System.in);
ArrayList board=新的ArrayList();
int num=scan.nextInt();
scan.nextLine();
int num1=0;
字符串num2=“”;
字串=”;
字符串word1=“”;
对于(int i=0;i 10){
num1=单词长度()-2;
num2=整数.toString(num1);
word1=word.charAt(0)+num2+word.charAt(word.length()-1);
董事会。添加(word1);
}否则{
添加(单词);
}
}

对于(int i=0;i),无论哪一行抛出错误,您都试图读取只有一个元素的数组中的第二个元素。请在您的问题中隔离发生此问题的行。`for(i=0;i检查board ArrayList的大小,因为如果它为空,则未执行任何检查。程序运行正常,但当我在输入中输入num的数字时,出现了错误