首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多维数组bufferedreader

多维数组bufferedreader
EN

Stack Overflow用户
提问于 2014-02-23 19:01:43
回答 3查看 912关注 0票数 1

如何在一个readLine中组合num1num2?我的意思是,例如,如果我在问题num1上输入数字11,它将自动为Mike。有可能吗?这是代码。

代码语言:javascript
复制
import java.io.*;
class array {

    public static void main (String [] args) throws IOException {
        BufferedReader br = new BufferedReader (new InputStreamReader(System.in));

        String [][] names = {
              {"Mike", "Mateo"}, {"Darcy", "Yalong"}, {"Karlo", "Pilapil"},
              {"Naomi", "Balmaceda"}
        };

        int num1, num2;
        System.out.print("Enter a number from 1 to 4: ");
        num1 = Integer.parseInt(br.readLine());
        System.out.println("Enter another number, 1 or 2: ");
        num2 = Integer.parseInt(br.readLine());

        System.out.print(names[num1-1][num2-1]);

    }
}
EN

回答 3

Stack Overflow用户

发布于 2014-02-23 19:54:04

您可以接受字符串形式的输入,并将其转换为字符数组:

代码语言:javascript
复制
char s[]=br.readLine().toCharArray();
int num1=Integer.parseInt(""+s[0]);
int num2=Integer.parseInt(""+s[1]);  
票数 1
EN

Stack Overflow用户

发布于 2014-02-23 23:12:17

您可以使用java.lang.Character.digit()方法之一,而不是使用Integer.parseInt()并将字符转换为字符串:

代码语言:javascript
复制
String line = ...;
int num1 = Character.digit( line.charAt(0), 10 ); 
int num2 = Character.digit( line.charAt(1), 10 );
票数 1
EN

Stack Overflow用户

发布于 2014-02-23 19:12:17

如果用户键入11,则这将在一个readLine中获得数据num1 = 1num2 = 1

代码语言:javascript
复制
String line = br.readLine();
num1 = Integer.parseInt(""+line.charAt(0));
num2 = Integer.parseInt(""+line.charAt(1));

如果列表中的选择符是包含一个以上数字的数字,则可能需要使用空格、逗号、分号等分隔符,然后拆分字符串。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21967332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档