繁体   English   中英

如何将Java中的键盘输入(int)传递给String?

[英]How to pass Keyboard Input (int) in Java to String?

我有一个文本文件,其名称由制表符分隔。 我需要在给定的输入数字上打印名称。 就像我有

abc def ghi jkl mno

当用户输入2时,应打印“ def”。 我所做的是

import java.io.*;
import java.util.*;

public class NamesTab {
public static void main(String[] args) throws IOException {


        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        char ch;
                System.out.println("Enter the Number: ");
        ch=(char) br.read();
        System.out.println(ch);
        BufferedReader s = new BufferedReader(new FileReader("Ass1.txt"));      
        String c=s.readLine();
        String[] tokens = c.split("\t");
        System.out.println(tokens[1]);
}}

但我无法将"ch"传递给"tokens[ch]" 请帮我。

您可以将ch-'0'用于个位数。

System.out.println(tokens[ch-'0']);

我们是否可以假设ch始终指0到9之间的数字? 如果是这样, ch - '0'应该可以解决问题。

您试图在应该为Integer的空间中提供字符。 我知道这种“应该”在Java中有效,但是为了安全起见,当获取包含所需字符的String数组的索引时,请将ch转换为int

System.out.println(tokens[(int)ch]);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM