Java控制台读写

控制台读

Java中进行控制台读操作主要是通过Scanner,BufferReader,Console类进行

1. Scanner

Scanner对象定义

在控制台
Scanner类一般有以下两种定义
import java.util.Scanner;
import java.io.BufferReader;
Scanner sc1=new Scanner(System.in); //--1
Scanner sc2=new Scanner(new InputStreamReader(System.in)); //-2 Scanner是Java设计的一个文本扫描器类,对于第一行,在创建类的时候给出构造器参数System.in说明这是通过系统键盘即控制台输入的,第二个Scanner对象将控制台输入数据进行了字符流读取转换,效率上可以比第一个Scanner对象快一些

Scanner API

byte nextByte();
double nextDouble();
....等等基础数据,API的命名见名思义
重点介绍两个API
String next();
String nextLine();
两个API都是用来读取String对象的
next()必须读取到至少一个有效字符,无效字符是那些看不见的,如(TAB,空格,换行),并且再读取至少一个有效字符后才能够将无效字符作为结束符处理
nextLine()只将换行符作为无效字符,且没有限制必须读入有效字符。
2. Console

Console对象的定义

impot java.io.Console;
public class Demo{
public static void main(String[] args){
Console con=System.console();
String account=con.readLine("please input the account");
char[] pwd=con.readPassword("please input the password");
}
}

Console API

String readLine()
String readLine(String fmt,Object... args)
char[] readPassword()
char[] readPassword(String fmt,Object... args)
format(String fmt,Object... args)
printf(String fmt,Object... args)
3. BufferReader

BufferReader对象的定义

import java.io.InputStreamReader;
import java.io.BufferReader;
public class Demo{
public static void main(String[] args){
BufferReader br=new BufferReader(new InputStreamReader(System.in));
String ans=br.readLine();
br.close();
}
}

BufferReader API

因为BufferReader只支持readLine(),read(),可以利用那些封装类进行装箱拆箱操作以便读取多种数据

int read();
int read(char buffer[],int off,int len);
int readLine();

控制台写

System.out.print();
System.out.println();
System.out.printf(); //类似C++

Java控制台读写的更多相关文章

  1. Java Applet读写client串口——终极篇

    測试环境: SDK:Oracle JRockit for Java version 6, Java Communication for Windows 2.0 OS:WINDOWS7 外设:串口条形码 ...

  2. java控制台输入

    一.java控制台输入 java控制台输入有如下几个方法 1.JDK 1.4 及以下版本读取的方法 JDK 1.4 及以下的版本中要想从控制台中输入数据只有一种办法,即使用System.in获得系统的 ...

  3. java 顺序 读写 Properties 配置文件

    java 顺序 读写 Properties 配置文件 支持中文 不乱码 java 顺序 读写 Properties 配置文件 ,java默认提供的Properties API 继承hashmap ,不 ...

  4. Java IO读写中文各种乱码问题 【转】

    Java IO读写中文各种乱码问题 转自:http://blog.sina.com.cn/s/blog_484ab56f0101muzh.html java.io.*读写中文各种乱码,很费劲.不完全解 ...

  5. JAVA控制台输入输出方法总结

    java的控制台输入输出有很多方法,此文分别对其进行介绍. 1.控制台的输入 关于控制台的输入主要介绍三种方法,第一种方法使用BufferedReader获得控制台输入的数据,此方法是传统的输入方法, ...

  6. Java 控制台输入数字 输出乘法表(代码练习)

    最近,回忆了一些刚学习Java时经常练习的一些小练习题.感觉还是蛮有趣的,在回顾时想起好多学习时的经历和坎坷,一道小小的练习题要研究半天,珍重过往,直面未来.下面贡献代码,Java 控制台输入数字 输 ...

  7. java控制台输入带空格的字符串

    java控制台输入带空格的字符串 Scanner sc = new Scanner(System.in); String str = sc.nextLine();

  8. AndroidStudio开发Java工程(解决java控制台中文打印乱码+导入jar包运行工程)

    这篇分享一点个人AS开发java工程经验,虽然有时候还是得打开eclipse来运行java项目,但能用AS的时候还是尽量用AS,毕竟一个字,爽~ 废话不多说,进入正题. 一.开发Java工程 你有两种 ...

  9. java StringBuffer读写文件

    java StringBuffer读写文件 StringBuffer的优势 较String:String每更新一次就会new一个新的对象出来,更新次数上去之后,内存开销太大.而StringBuffer ...

随机推荐

  1. easyui图标对照

    转自:https://blog.csdn.net/qq_34545192/article/details/78250816 原作者文章地址: http://www.cnblogs.com/timeme ...

  2. mldonkey设置!看图(转载)

    转自:http://www.nenew.net/ubuntu-mldonkey-application.html 这里不是争论区,amule和mldonkey各有各好,看个人爱好,没有高下,都是程序员 ...

  3. SVN请求认证信息

    WIN10:C:\Users\Home目录\AppData\Roaming\Subversion Window Server 系统:C:\Users\Home目录\AppData\Roaming\Su ...

  4. 在sql语句中使用关键字

    背景 开发过程中遇到了遇到了一句sql语句一直报错,看了一下字段名和表名都对应上了,但是还是一直报错 sql语句如下: update table set using = ""hh ...

  5. [Usaco2018 Open]Milking Order

    Description Farmer John的N头奶牛(1≤N≤10^5),仍然编号为1-N,正好闲得发慌.因此,她们发展了一个与Farmer John每天早上为她们挤牛奶的时候的排队顺序相关的复杂 ...

  6. 题解报告:poj 1321 棋盘问题(dfs)

    Description 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别.要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子 ...

  7. ACM_排序

    除了sort,你还会什么 Time Limit: 1000/500ms (Java/Others) Problem Description: 给出若干人的年龄(1~100之间的整数),把它们按照从小到 ...

  8. [转]MySQL存储过程

    转自:http://www.cnblogs.com/exmyth/p/3303470.html 14.1.1 创建存储过程 MySQL中,创建存储过程的基本形式如下: CREATE PROCEDURE ...

  9. Generating RSA keys in PKCS#1 format in Java--转

    原文地址:https://stackoverflow.com/questions/7611383/generating-rsa-keys-in-pkcs1-format-in-java When I ...

  10. Visual Studio 生成项目时脚本执行

    项目属性 - 生成事件 项目生成前:预先生成事件命令行: 项目生成后:后期生成事件命令行:例:copy $(ProjectDir)Reference\sms_cfg.ini $(TargetDir) ...