您的位置:首页 > 编程语言 > Java开发

java怎么从控制台输入的几种方法

2016-06-22 01:52 453 查看
1.InputStreamReader输入

package com.file;

import java.io.*; //InputStreamReader类在java.io.*;哩

public class FtTestthread {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

char[] s=new char[1024]; //这里解释一下,不能用String去承接,因为是单个字符这样读的,如果用String的话,必须用BufferedReader

InputStreamReader r=new InputStreamReader(System.in);

System.out.println("输入:");

try {

r.read(s);
// 解释一下,输入流的r.read (m)函数的参数,指的是,将r指代路径的内容输给m,r的指代路径是System.in,m这里是指s

System.out.println(s);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}finally{try {

r.close();
//唯一需要注意的就是,用流的时候,要有提前在finally里关闭流的习惯,不然会出大事

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}}

}

}

2.用BufferedReader

package com.file;

import java.io.*;

import java.nio.CharBuffer;

public class FtTestthread {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

//char[] s=new char[1024];

String s2="";

InputStreamReader r=new InputStreamReader(System.in);

BufferedReader br=new BufferedReader(r);

System.out.println("输入:");

try {

//r.read(s);

s2+=br.readLine();
//和第一种做了对比,对比差异被我放进了注释,BufferedReader可以按行读取,一行一行读,所以出来的直接可以用

System.out.println("输出"+s2);
//String承接

//System.out.prinln(s);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}finally{try {

r.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}}

}

}

3.用Scanner类

package com.file;

import java.util.*; //util包有很多好用的,集合框架都包含在里面

public class Testtwo {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner scan=new Scanner(System.in);

String s=null;

System.out.println("输入:");

s=scan.nextLine();

scan.close(); //scan的用法比较简单,不多赘述了

System.out.println("输出为:"+s);

}

}

4.如何把字符串转换成其他形式呢

package com.file;

import java.util.*;

public class Testtwo {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

String s="123";

int b=Integer.parseInt(s);

s="23.4";

float c=Float.parseFloat(s);

System.out.println("int型:"+b);

System.out.println("浮点型"+c);

}

//就这样、转long就是 Long.parseLong(s)

嘻嘻~~~~~~~~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: