java的控制台输入输出有很多方法,此文分别对其进行介绍。

1、控制台的输入

关于控制台的输入主要介绍三种方法,第一种方法使用BufferedReader获得控制台输入的数据,此方法是传统的输入方法,使用起来比较繁琐,输入效率也不高,其次是使用System.in作为输入,感觉此方法不是很灵活。最后,使用Scanner作为输入,这种方法使用起来非常的方便好用,并且功能强大。

1.1 使用BufferedReader方法输入,这种方法很繁琐

	//返回输入的一行数据
public static String readLine1() throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
return br.readLine();
}

1.2 直接使用System.in输入

	//获得输入的一数据块
public static String readLine2() throws IOException
{
byte buf[] = new byte[1024];
int i = System.in.read(buf);
return new String(buf, 0, i-2); //有两个结束符,\r\n,所以要减2
}

1.3使用Scanner输入,这种方法最好用

/**
* 可以使用s.next()输入一个不含空格的字符串,
* s.nextInt():输入一个整数
* s.nextDouble():输入一个double
* s.nextByte():输入一个字符
**/
public static String readLine3()
{
Scanner s = new Scanner(System.in);
return s.nextLine(); //s.nextInt();
}

2、控制台的输出

输出方式总共两种,分别是正常输出和发生错误时的输出。

两种输出分别为:

System.out.println("out: "+str);
System.err.println("err: "+str);

关于System.out函数的输出,有很多的输出格式,

在此借用一网友的代码,原文链接:Ajioy的专栏,JAVA控制台输出格式

public static void main(String[] args)
{
//Console print format
//System.out.printf(format, args);format为指定的输出格式,args参数
System.out.printf("%+8.3f\n", 3.14); //"+"表示后面输出的数字会有正负号,正的+,负的- ;8.3f表示输出浮点数,宽度为8,小数点保持3位有效
System.out.printf("%+-8.3f\n", 3.14);//"-"表示靠左对齐
System.out.printf("%08.3f\n", 3.14);//"0"8位宽度中自动补0
System.out.printf("%(8.3f\n", -3.14);//"("如果是负数,自动加上( )
System.out.printf("%,f\n", 123456.78); //","金钱表示方法,每三位有一个逗号
System.out.printf("%x\n", 0x2a3b); //输出16进制数
System.out.printf("%#x\n", 0x2a3b);//输出带0x标识的16进制数
System.out.printf("老板:您名字%s,年龄:%3d岁,工资:%,-7.2f\n","ajioy",21,36000.00);
System.out.printf("老板:您名字%1$s,年龄:%2$#x岁\n","ajioy",38); //"n{1}quot;表示用第n个参数 }

JAVA控制台输入输出方法总结的更多相关文章

  1. java控制台输入输出

    一.比较传统的输入方法用输入流,得到字符串后要另行判断.转换 案例 import java.io.BufferedReader; import java.io.IOException; import ...

  2. java控制台输入输出字符串

    一.实例说明 本实例通过输入流(System.in)实现从控制台接受用户输入信息,并将该信息输出到控制台. 运行效果如下图: 二.实现代码 三.要点说明 该实例的关键就是用到了System类的输入流, ...

  3. 关于Java控制台输入输出乱码问题

    产生原因:因为这个开源项目的默认字符编码为UTF-8,所以我的控制台的字符编码也自动变成了UTF-8,而键盘的输入流的默认格式是GBK格式,这样就造成了在GBK转UTF-8的过程中产生的奇数乱码错误( ...

  4. Java常用的输入输出方法

    对于经常上机刷题的来说,首先得解决输入输出方法,Java的输入输出流在Java学习过程的后面部分才会接触,但是我们可以掌握一些简单的,常用的输入输出方法 首先输出 大家最熟悉的莫过于输出方法,直接用S ...

  5. java控制台输入

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

  6. Java读写文件方法总结

    Java读写文件方法总结 Java的读写文件方法在工作中相信有很多的用处的,本人在之前包括现在都在使用Java的读写文件方法来处理数据方面的输入输出,确实很方便.奈何我的记性实在是叫人着急,很多时候既 ...

  7. 在竞赛ACM Java处理输入输出

    一.Java之ACM注意点 1. 类名称必须采用public class Main方式命名 2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错误,所以在我看来好多OJ系统做的是非 ...

  8. 通过Java反射调用方法

    这是个测试用的例子,通过反射调用对象的方法.     TestRef.java import java.lang.reflect.Method; import java.lang.reflect.In ...

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

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

随机推荐

  1. java文件处理之压缩,分割

    http://blog.csdn.net/ycg01/article/details/1366648 java文件处理之压缩,分割 标签: javaexceptionimportnullbytefil ...

  2. HDU 5900

    QSC and Master Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  3. C#实现拷贝对象

    大家都知道,在C#中变量的存储分为值类型和引用类型两种,而值类型和引用类型在数值变化是产生的后果是不一样的,值类型我们可以轻松实现数值的拷贝,那么引用类型呢,在对象拷贝上存在着一定的难度.     下 ...

  4. table固定宽度高度, 及overflow省略号

    整体设置标签为:td {text-overflow: ellipsis; white-space: nowrap; overflow: hidden; } table fix设置 <table ...

  5. 如何play billard

    怎样打台球?(一) 首先,要打好台球,必须要做好准备:1.要有自己的专杆,每日用不同杆的人,台球水平必定一般.2.精神状态度要好,睡眠不足或心里有事儿,不要打台球.记住,台球是专注度要求极高的运动.3 ...

  6. Delphi版IP地址与整型互转

    Delphi版IP地址与整型互转 unit Unit11; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphic ...

  7. CakePHP下使用paginator需要对多个字段排序的做法

      原文:http://blog.csdn.net/kunshan_shenbin/article/details/7644603  CakePHP下使用paginator需要对多个字段排序的做法 2 ...

  8. PAT (Advanced Level) 1077. Kuchiguse (20)

    最长公共后缀.暴力. #include<cstdio> #include<cstring> #include<cmath> #include<vector&g ...

  9. whm 设置共享IP

    点击 Main >>Resellers>>resellers centers (manages ressellers center's IP有几个IP代表几个)

  10. html ajax 双引号的问题

    "<a onClick='openwin_searchmodel()' href='searchmodel.action?projectname="+person[i].ge ...