Java基础知识每日总结(5)---Java输入输出

输入输出

1.简介
能接受用户的输入会使程序变得更加灵活,现代的程序都是用GUI收集用户的输入。GUI又叫图形用户界面,它允许用户使用鼠标等输入设备操纵屏幕上的图标或菜单选项,以选择命令、调用文件、启动程序或执行其它一些日常任务。下面来介绍简单的用于输入输出的控制台。

2.输入
在Java中想要读取"标准输入流"System.in通过控制台进行输入,需要构造一个Scanner对象,并与"标准输入流"System.in关联。

Scanner in=new Scanner(System.in);

使用Scanner类的各种方法来实现输入操作。
例:想输入一行且这行中可能包含空格用nextLine方法,

System.out.println("What's your name?");
String name=in.nextLine();

还有一个有趣的next()方法,next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。
想读取一个整数就用nextInt,浮点数nextDouble等等。

注:如果想用Scanner类就需要在程序的最上方添加一行:import java.util.Scanner;
因为输入是可见的,所以不建议使用Scanner类来从控制台获取密码等信息。可以使用Console类,

Console cons=System.console();
String username=cons.readLine("User name:");
char[] pwd=cons.readPassword("Password:");

同样,要使用Console类就要在程序最上方添加一行:import java.io.Console;

3.格式化输出
在Java中用System.out.println(x)将x输出到控制台上。
Java SE5推出了C语言中的printf()风格的格式化输出功能。例,

System.out.printf("%8.2f", x);
System.out.printf("Hello,%s.Next year,you'll be %d",name,age);

上面的代码在运行时,首先将x的值插入到%8.2f(x占8个字符的宽度和小数点后两个字符的精度)的位置,name的值插入到%s的位置,age的值插入到%d的位置。这些占位符称作格式修饰符,它们不但说明了插入数据的位置,还说明了将插入什么类型的变量,以及如何对其格式化。
格式修饰符尾部的转换符将指示被格式化的数值类型,下面列出了一些转换符,
在这里插入图片描述
另外,还可以使用静态的String.format方法创建一个格式化的字符串而不打印输出,例,

String a=String.format("Hello,%s.Next year,you'll be %d.",name,age);

4.文件的输入与输出
在Java中要想对文件进行读取,就需要用File对象构造一个Scanner对象。例,

Scanner in=new Scanner(Paths.get("D:\\桌面\\新建文本文档.txt"),"UTF-8");

如果文件命中包含反斜杠符号,就要在每一个反斜杠符号前额外加上一个反斜杠符。
要想写入文件就需要构造一个PrintWriter对象。例,

PrintWriter out=new PrintWriter("D:\\桌面\\新建文本文档.txt","UTF-8");

如果文件不存在,创建改文件。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值