Java基础简单输入输出
输出
Java的输出比较简单,我们用System.out.printIn()这个方法来输出。printIn是换行输出,而print是不换行输出,相信大家都知道,基本上都是固定的。
public class Test(){
public static void mian(String[] args){
System.out.printIn("Hello World!");
System.out.print("Hello World!");
}
}
格式化输出
Java还有格式化输出,为什么需要格式化输出呢?说白了就是方便人们阅读,计算机表示的
数不一定适合人们阅读。
public class Test(){
public static void mian(String[] args){
double d = 12900000;
System.out.printIn(d);
}
}
输出的结果为1.29E7
如果我们需要数据显示成我们期望的格式,就需要使用格式化输出的功能。格式化输出使用System.out.printf(),通过使用占位符%?,printf()可以把后面的参数格式化成指定格式。
public class Test{
public static void main(String[] args) {
double d = 3.1415926;
System.out.printf("%.2f\n", d); // 显示两位小数3.14
System.out.printf("%.4f\n", d); // 显示4位小数3.1416
}
}
输出的结果是3.14和3.1416
Java的格式化功能提供了多种占位符,可以把各种数据类型“格式化”成指定的字符串:
占位符 说明
%d 格式化输出整数
%x 格式化输出十六进制整数
%f 格式化输出浮点数
%e 格式化输出科学计数法表示的浮点数
%s 格式化字符串
输入
Java的输入要比输出复杂的多。先看一个例子:
import java.text.NumberFormat;
import java.util.Scanner;
public class Test0 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);//创建scanner对象
System.out.println("上次成绩:");//打印提示
int schengji = scanner.nextInt();//读取用户输入一行整形数据
System.out.println("本次成绩:"); //打印提示
int bchengji = scanner.nextInt();//读取用户输入一行整型数据
double d = (bchengji-schengji)/(double)schengji;//计算成绩提高
NumberFormat nf = NumberFormat.getPercentInstance();//创建百分比对象
nf.setMinimumFractionDigits(2);//保留两位小数
System.out.println("成绩提高的百分比为:"+nf.format(d));//输出
}
}
输出结果为
上次成绩:
90
本次成绩:
100
成绩提高的百分比为:11.11%
首先创建一个Scanner对象并传入System.in,System.in代表标准输入流,而System.out代表标准输出流,有了Scanner对象后,要读取用户输入的字符串,使用scanner.nextLine(),要读取用户输入的整数,使用scanner.nextInt()。Scanner会自动转换数据类型,不必手动转换。