java基础-基本的输入与输出
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.基本的输出
基本的输出,System.out 就是系统的标准输出设备,默认为显示器。
1>.先打印,在换行
1 /* 2 @author :yinzhengjie 3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/ 4 EMAIL:y1053419035@qq.com 5 */ 6 7 public class Test{ 8 public static void main(String[] args){ 9 10 String Name = "yinzhengjie"; 11 12 //println方法默认是有换行符的哟! 13 System.out.println(Name); 14 15 } 16 }
2>.只打印不换行
1 /* 2 @author :yinzhengjie 3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/ 4 EMAIL:y1053419035@qq.com 5 */ 6 7 public class Test{ 8 public static void main(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 :yinzhengjie 3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/ 4 EMAIL:y1053419035@qq.com 5 */ 6 7 import java.util.Scanner; //导入一个Scanner类 8 9 public class Test{ 10 public static void main(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 :yinzhengjie 3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/ 4 EMAIL:y1053419035@qq.com 5 */ 6 7 import java.util.Scanner; //导入一个Scanner类 8 9 public class Test{ 10 public static void main(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 = new Scanner(System.in); String s1 = s.next(); System.out.println(s1); //next()方法只会读取回车之前的内容,所以,还有一个回车符剩余,将被nextLine方法读取到 String s2 = s.nextLine(); System.out.println(s2); //读取到上一次next方法剩余的回车符之后,s2就是一个回车符,然后程序就把回车符输出,就结束了
四.格式化输出
1 public class FormatDemo{ 2 public static void main(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 ! ",Name,Age); 7 //format格式化用法展示 8 System.out.format("My name is %s and i am %d years old ! ",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,在文本的换行符。通常用‘ ’标记,表示将当前行往下移动一行。
2>.carriage-return
简称CR,在文件中的回车符,通常用“ ”标记。表示将当前光标移动到行首。
3>.换行符和回车符的区别
回车符表示将光标的从当前行的任意位置移动到行首,而换行符表示从当前行移动到下一行的行首。在windows中换行符用“ ”表示,而在Linux中的换行符用" 表示"。