Java的5种键盘输入方式

package com.test.Log4j;

import java.io.BufferedReader;
import java.io.Console;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;
import javax.swing.JOptionPane;
import junit.framework.TestCase;

public class InputTest extends TestCase {
	
	/**
	 * 利用字节输入类
	 */
	public void	testByteReader(){
		String s = "";
		System.out.println("ByteReader方式输入");
		byte[] readIn = new byte[50];
		
		int count = 0;
		try{
	
		System.out.println("you input:");
		count = System.in.read(readIn);
	
		}catch(Exception e){
		e.printStackTrace();
		}
		
		System.out.println(new String(readIn, 0, count)); 
	}
	
	/**
	 * 利用字符输入流
	 */
	public void	testBufferedReader(){
		String s = "";
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		System.out.println("BufferReader方式输入");
		try {
			s = br.readLine();
		} catch (IOException e) {
			e.printStackTrace();
		}

		System.out.println(s);
		
		
	}
 /**
  * 扫描器类(Scanner)从控制台中读取字符串
  */
	public void	testScanner(){
		String s = "";
		Scanner sc = new Scanner(System.in);

		System.out.println("Scanner方式输入");
		s = sc.next();
		System.out.println(s);

		}
	/**
	 * 对话框输入数据
	 */
	public void	testJOptionPane(){
	
		System.out.println("JOptionPane方式输入");
		String name = JOptionPane.showInputDialog("what is your name?");
		
		System.out.println(name);

		}
	public void	testConsole(){
		/** jdk1.6新功能
		 * Java要与Console进行交互,不总是能得到可用的Java
		 * Console类的。一个JVM是否有可用的Console,依赖于底层平台和JVM如何被调用
		 * 。如果JVM是在交互式命令行(比如Windows的cmd
		 * )中启动的,并且输入输出没有重定向到另外的地方,那么就我们可以得到一个可用的Console实例。
		 * 当你有Eclipse或NetBean中运行以上代码时Console中将会有以下文字输出: Console is unavailable.
		 * 
		 * 表示Java程序无法获得Console实例,是因为JVM不是在命令行中被调用的,或者输入输出被重定向了。
		 */
		Console console=System.console();
		  if (console == null) {   
	            throw new IllegalStateException("不能使用控制台");   
	        }   
		String s= console.readLine("输入你的参数");
		System.out.println(s);

		}
	
	public static void main(String[]  args){
		/**
		 * 主函数参数输入
		 */
		System.out.println(args[0]);
	}
	
}

Console输入扔在测试中

转载于:https://my.oschina.net/zlp5201/blog/404193

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值