从键盘输入一个int/double/字符串?

来源:互联网 发布:刘循子墨网络剧 编辑:程序博客网 时间:2024/05/16 07:18
import java.io.*;
import java.math.*;
public class test
{
    
public static void main(String args[])
    
{
        
try
        
{
            BufferedReader in 
= new BufferedReader(new InputStreamReader(System.in));
            System.out.println(
"please input something !");
            String s 
= in.readLine();
            
double n = Double.parseDouble(s);
            System.out.println(n);
        }

        
catch(Exception ex)
        
{
            ex.printStackTrace();
        }

        }

}
;

 如果想输入int类型,则 double n = Double.parseDouble(s);

                                             改为 int n = Integer.parseInteger(s);

java 的输入输出确实比较麻烦。

另外也可以用 Scanner 类 :

public final class Scanner
extends Object
implements Iterator<String>
 

一个可以使用正则表达式来分析基本类型和字符串的简单文本扫描器。

Scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的 next 方法将得到的标记转换为不同类型的值。

例如,以下代码使用户能够从 System.in 中读取一个数:

     Scanner sc = new Scanner(System.in);     int i = sc.nextInt(); 

再看一个例子,以下代码使 long 类型可以通过 myNumbers 文件中的项分配:

      Scanner sc = new Scanner(new File("myNumbers"));      while (sc.hasNextLong()) {          long aLong = sc.nextLong();      }

扫描器还可以使用不同于空白的分隔符。下面是从一个字符串读取若干项的例子:

     String input = "1 fish 2 fish red fish blue fish";     Scanner s = new Scanner(input).useDelimiter("//s*fish//s*");     System.out.println(s.nextInt());     System.out.println(s.nextInt());     System.out.println(s.next());     System.out.println(s.next());     s.close(); 

输出为:

     1     2     red     blue 
public final class Scanner
extends Object
implements Iterator<String>
 

一个可以使用正则表达式来分析基本类型和字符串的简单文本扫描器。

Scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的next 方法将得到的标记转换为不同类型的值。

例如,以下代码使用户能够从 System.in 中读取一个数:

     Scanner sc = new Scanner(System.in);     int i = sc.nextInt(); 

再看一个例子,以下代码使 long 类型可以通过 myNumbers 文件中的项分配:

      Scanner sc = new Scanner(new File("myNumbers"));      while (sc.hasNextLong()) {          long aLong = sc.nextLong();      }

扫描器还可以使用不同于空白的分隔符。下面是从一个字符串读取若干项的例子:

     String input = "1 fish 2 fish red fish blue fish";     Scanner s = new Scanner(input).useDelimiter("//s*fish//s*");     System.out.println(s.nextInt());     System.out.println(s.nextInt());     System.out.println(s.next());     System.out.println(s.next());     s.close(); 

输出为:

     1     2     red     blue 
原创粉丝点击