java基础-基本的输入与输出
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.基本的输出
基本的输出,System.out 就是系统的标准输出设备,默认为显示器。
1>.先打印,在换行
1 /*
2 @author :yinzhengjie3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
4 EMAIL:y1053419035@qq.com5 */
6
7 public classTest{8 public static voidmain(String[] args){9
10 String Name = "yinzhengjie";11
12 //println方法默认是有换行符的哟!
13 System.out.println(Name);14
15 }16 }
2>.只打印不换行
1 /*
2 @author :yinzhengjie3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
4 EMAIL:y1053419035@qq.com5 */
6
7 public classTest{8 public static voidmain(String[] args){9
10 String Name = "yinzhengjie";11 int Year = 2018;12
13 //println方法默认是有换行符的哟!
14 System.out.print(Name);15 System.out.print(Year);16
17 }18 }
二.基本的输入
1>.常见的输入类型
1 /*
2 @author :yinzhengjie3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
4 EMAIL:y1053419035@qq.com5 */
6
7 import java.util.Scanner; //导入一个Scanner类
8
9 public classTest{10 public static voidmain(String[] args){11 //基本的输入,扫描键盘上的数据,System.in代表系统的标准输入设备,即键盘。
12 Scanner input = new Scanner(System.in); //这是在创建Scanner对象13
14
15 //一般情况下,在要求用户输入之前,给一个友好的提示信息
16 System.out.println("请输入一个整数");17
18 //从键盘上读取一个整数,把这个整数保存到变量i中
19 int i = input.nextInt(); //读取数据吗
20 System.out.println("你输入的整数为:"+i );21
22 System.out.println("请输入一个小数");23 double d =input.nextDouble();24 System.out.println("你输入的小数为:"+d );25
26 System.out.println("请输入一个布尔值");27 boolean flag =input.nextBoolean();28 System.out.println("你输入的布尔值为:"+flag );29
30 System.out.println("请输入一个字符串");31 String str =input.next();32 System.out.println("你输入的布尔值为:"+str );33
34
35 System.out.println("请输入一个字符"); //不能直接读取一个字符0
36 String str2 = input.next(); //先以字符串的形式读取出来
37 char mychar = str2.charAt(0); //再从字符串把字符取出来,把字符串str2中第一个字符取出来
38 System.out.println("你输入的字符为:"+mychar );39
40
41
42 }43 }
2>.读取用户信息练习脚本
1 /*
2 @author :yinzhengjie3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
4 EMAIL:y1053419035@qq.com5 */
6
7 import java.util.Scanner; //导入一个Scanner类
8
9 public classTest{10 public static voidmain(String[] args){11
12 Scanner input = new Scanner(System.in); //这是在创建Scanner对象
13
14 System.out.print("请输入姓名:");15 String Name = input.next(); //读取
16
17 System.out.print("请输入工作小时数:");18 int hours =input.nextInt();19
20 System.out.print("请输入每小时工资数:");21 int hourlySalary =input.nextInt();22
23 System.out.print("请输入税率:");24 double tax =input.nextDouble();25
26 double salary = hours*hourlySalary*(1-tax); //计算工资
27
28 System.out.println("姓名:"+ Name + "工资:" +salary);29
30
31 }32 }
三.next()和nextLine()的区别
next()
只读取回车之前的内容
nextLine()
读取内容和回车,如果之前有回车没有被读取,那么剩下的回车直接会被读取
Scanner s= newScanner(System.in);
String s1=s.next();
System.out.println(s1);//next()方法只会读取回车之前的内容,所以,还有一个回车符剩余,将被nextLine方法读取到
String s2 =s.nextLine();
System.out.println(s2);//读取到上一次next方法剩余的回车符之后,s2就是一个回车符,然后程序就把回车符输出,就结束了
四.格式化输出
1 public classFormatDemo{2 public static voidmain(String[] args){3 String Name = "yinzhengjie";4 int Age = 18;5 //printf格式化用法展示
6 System.out.printf("My name is %s and i am %d years old !\n",Name,Age);7 //format格式化用法展示
8 System.out.format("My name is %s and i am %d years old !\n",Name,Age);9 }10
11 /**
12 最常用的类型转换字符如下:13 1>.d 整数型(10进制 );14 2>.e 浮点数(科学计数);15 3>.c Unicode字符;16 4>.x 整数(16进制);17 5>.b Boolean值;18 6>.h 散列码(16进制);19 7>.s String % 字符"%";20 8>.f 浮点数(10进制)21 */
22
23 }
五.利用main方法传参
我们知道main是程序的入口,在Java1.5版本之前,main函数还可以用来传递命令行参数,但是随着Scanner类的出现,人们对main方法传参的用法越来越少了,因为大量程序员觉得这种方法很low,传参的过程中只能在启动Java虚拟机的时候传递,在运行时想要随时传参就很麻烦。所以Java的大牛们开发了Scanner类,Java的程序员们也就淡淡遗忘了它,但是截止目前版本(jdk-9.0.4)依然还保留着main方法传参的功能哟!不信你看下图就是我简单写的一个模板:
六.windows和Linux的换行符区分
1>.linefeed
简称LF,在文本的换行符。通常用‘\n’标记,表示将当前行往下移动一行。
2>.carriage-return
简称CR,在文件中的回车符,通常用“\r”标记。表示将当前光标移动到行首。
3>.换行符和回车符的区别
回车符表示将光标的从当前行的任意位置移动到行首,而换行符表示从当前行移动到下一行的行首。在windows中换行符用“\n”表示,而在Linux中的换行符用"\r\n表示"。