java中基本数据类型的输入包括
整形的输入:in.nextInt();
单精度浮点型:in.nextFloat();
双精度浮点型:in.nextDouble();
字符串类型:in.next();in.nextLine();

但是并没有in.nextChar(); 有时候我们想要用Scanner接收char类型数据,而不是接收String。

这时,我们可以先输入String,再转为char
需要用到charAt() 函数

正常使用Scanner时,可以这样:

Scanner in = new Scanner(System.in);
 char c = in.next().charAt(i);


把str的第i个char值赋值给c,类似于数组的查找。

示例1

import java.util.Scanner;

public class myChar {
    public static void main(String arg[]){
        Scanner in = new Scanner(System.in);
        String[] strings=new String[3];
        char[][] chars=new char[3][3];
        for (int i = 0; i <3 ; i++) {
            strings[i]=in.next();
        }
        for (int i = 0; i <3 ; i++) {
           System.out.println(strings[i]);
        }
        for (int i = 0; i <3 ; i++) {
            for(int j=0;j<3;j++)
            {
                chars[i][j]=strings[i].charAt(j);
            }
        }
        for (int i = 0; i <3 ; i++) {
            for(int j=0;j<3;j++)
            {
                System.out.println(chars[i][j]);
            }
        }
    }
}

示例2
洛谷P4414 [COCI2006-2007#2] ABC