如何在java中使用scanner函数逐个字符地获取一个字符并将其存储在二维数组中
我需要编写一个程序,读取输入行并将其存储在二维字符数组中如何在java中使用scanner函数逐个字符地获取一个字符并将其存储在二维数组中,java,arrays,Java,Arrays,我需要编写一个程序,读取输入行并将其存储在二维字符数组中 import java.util.*; import java.lang.*; import java.io.*; class Ideone { public static void main(String[] args) throws java.lang.Exception { char[][] a = new char[4][5]; Scanner inn = new Scanner(Sys
import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone {
public static void main(String[] args) throws java.lang.Exception {
char[][] a = new char[4][5];
Scanner inn = new Scanner(System.in);
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 5; j++) {
a[i][j] = inn.next().charAt(i + j);
}
}
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 5; j++) {
System.out.println(a[i][j]);
}
}
}
}
import java.util.*;
导入java.lang.*;
导入java.io.*;
表意文字{
公共静态void main(字符串[]args)引发java.lang.Exception{
字符[][]a=新字符[4][5];
Scanner inn=新扫描仪(System.in);
对于(int i=0;i<4;i++){
对于(int j=0;j<5;j++){
a[i][j]=inn.next().charAt(i+j);
}
}
对于(int i=0;i<4;i++){
对于(int j=0;j<5;j++){
System.out.println(a[i][j]);
}
}
}
}
但是我遇到了运行时错误。谁能说一下如何解决它。对于任何合理的答案,你应该说错误是什么 但是看看你的代码,这可能是因为你试图在一个循环中多次获得
inn.next()
试试这个
String value = inn.next();
for(int i=0;i<4;i++)
{
for(int j=0;j<5;j++)
{
a[i][j]=value.charAt(i*5+j);
}
}
String value=inn.next();
对于(int i=0;i你应该说出任何合理答案的错误是什么
但是看看你的代码,这可能是因为你试图在一个循环中多次获得inn.next()
试试这个
String value = inn.next();
for(int i=0;i<4;i++)
{
for(int j=0;j<5;j++)
{
a[i][j]=value.charAt(i*5+j);
}
}
String value=inn.next();
对于(int i=0;i您必须先读取整个字符串,然后才能逐字符获取它:
String s = inn.next();
for(int i=0;i<4;i++)
{
for(int j=0;j<5;j++)
{
a[i][j]=s.charAt(i+j);
}
}
String s=inn.next();
对于(int i=0;i您必须先读取整个字符串,然后才能逐字符获取它:
String s = inn.next();
for(int i=0;i<4;i++)
{
for(int j=0;j<5;j++)
{
a[i][j]=s.charAt(i+j);
}
}
String s=inn.next();
对于(int i=0;i请查看,输入一个字符,然后按enter键
public static void main(String[] args) throws java.lang.Exception {
char[][] a = new char[4][5];
Scanner inn = new Scanner(System.in);
for (int i = 0 ; i < 4 ; i++) {
for (int j = 0 ; j < 5 ; j++) {
a[i][j] = inn.next().toCharArray()[0];
}
}
for (int i = 0 ; i < 4 ; i++) {
for (int j = 0 ; j < 5 ; j++) {
System.out.println(a[i][j]);
}
}
}
publicstaticvoidmain(字符串[]args)抛出java.lang.Exception{
字符[][]a=新字符[4][5];
Scanner inn=新扫描仪(System.in);
对于(int i=0;i<4;i++){
对于(int j=0;j<5;j++){
a[i][j]=inn.next().toCharArray()[0];
}
}
对于(int i=0;i<4;i++){
对于(int j=0;j<5;j++){
System.out.println(a[i][j]);
}
}
}
请看一看,输入一个字符,然后按回车键
public static void main(String[] args) throws java.lang.Exception {
char[][] a = new char[4][5];
Scanner inn = new Scanner(System.in);
for (int i = 0 ; i < 4 ; i++) {
for (int j = 0 ; j < 5 ; j++) {
a[i][j] = inn.next().toCharArray()[0];
}
}
for (int i = 0 ; i < 4 ; i++) {
for (int j = 0 ; j < 5 ; j++) {
System.out.println(a[i][j]);
}
}
}
publicstaticvoidmain(字符串[]args)抛出java.lang.Exception{
字符[][]a=新字符[4][5];
Scanner inn=新扫描仪(System.in);
对于(int i=0;i<4;i++){
对于(int j=0;j<5;j++){
a[i][j]=inn.next().toCharArray()[0];
}
}
对于(int i=0;i<4;i++){
对于(int j=0;j<5;j++){
System.out.println(a[i][j]);
}
}
}
根据需要更改二维数组的大小。
导入java.util.*
class StringToCharArray
{
public static void main (String[] args) throws java.lang.Exception
{
Scanner scan = new Scanner(System.in);
System.out.println("Enter a String");
char c[] = scan.next().toCharArray();
int i,j,k=0,m;
char data[][] = new char[10][10];
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
data[i][j] = c[k];
k++;
}
}
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
System.out.print(data[i][j]);
}
System.out.println("");
}
}
}
类StringToCharray
{
公共静态void main(字符串[]args)引发java.lang.Exception
{
扫描仪扫描=新扫描仪(System.in);
System.out.println(“输入字符串”);
char c[]=scan.next().toCharArray();
int i,j,k=0,m;
字符数据[][]=新字符[10][10];
对于(i=0;i根据需要更改二维数组的大小。
导入java.util.*
class StringToCharArray
{
public static void main (String[] args) throws java.lang.Exception
{
Scanner scan = new Scanner(System.in);
System.out.println("Enter a String");
char c[] = scan.next().toCharArray();
int i,j,k=0,m;
char data[][] = new char[10][10];
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
data[i][j] = c[k];
k++;
}
}
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
System.out.print(data[i][j]);
}
System.out.println("");
}
}
}
类StringToCharray
{
公共静态void main(字符串[]args)引发java.lang.Exception
{
扫描仪扫描=新扫描仪(System.in);
System.out.println(“输入字符串”);
char c[]=scan.next().toCharArray();
int i,j,k=0,m;
字符数据[][]=新字符[10][10];
对于(i=0;i运行时
你会得到什么错误?预期的输入
和输出
?你会得到什么运行时
错误?预期的输入
和输出
?我也不认为charAt(i+j)不是OP需要的。你是对的,我认为它更像(i*5+j)。我会更新答案。是的,它必须更准确;)而且我不认为charAt(I+j)不是OP需要的。你是对的,我认为它更像(I*5+j)。我会更新答案。是的,它必须更准确;)