Java中两种基本的输入方式小结
目录
- 两种基本的输入方式
- 1.使用Scanner类
- 2.使用System.in.read(); 方法
- 输入与输出的使用讲解
- 1.输入
- 2.输出
- 3.输入输出实例
两种基本的输入方式
1.使用Scanner类
需要java.util包
构造Scanner类的对象,附属于标准输入流System.in,之后通过其中的方法获得输入。
常用的方法:nextLine(); (字符串),nextInt(); (整型数),nextDouble(); (双精度型数)等等。
结束时使用close(); 方法关闭对象。
例子:
import java.util.*; class IOTest {public static void main(String args[]) {Scanner sc = new Scanner(System.in); System.out.println("enter your name:"); String name = sc.nextLine(); System.out.println("enter your age:"); int age = sc.nextInt(); System.out.println("enter your occupation:"); String occ = sc.next(); System.out.println("name:" + name + "\n" + "age:" + age + "\n" + "occupation:" + occ); sc.close(); }}
输入:
enter your name:
g28
enter your age:
20
enter your occupation:
student
输出:
name:g28
age:20
occupation:student
2.使用System.in.read(); 方法
需要java.io包。
System.in从标注输入获取数据,数据类型为InputStream。通过read(); 方法返回ASCII码,若返回值为-1,说明没有读取到任何字符结束工作。
使用时需要添加抛出声明或用try/catch包围。
例子:
import java.io.*; class IOTest {public static void main(String args[]) {int c; System.out.println("please enter the string:"); try {while((c = System.in.read()) != -1){System.out.print((char)c); }} catch (IOException e) {System.out.println(e.toString()); }}}
输入:
please enter the string:
My name is g28.
输出:
My name is g28.
输入与输出的使用讲解
1.输入
Java的输入,我们用到Scanner类,可以用它创建一个对象
Scanner input = new Scanner(System.in);
然后input对象调用nextBoolean(),nextByte(),nextShort(),nextInt(),nextLong(),nextFloat(),nextDouble()方法来从输入流中获取数据。
package com.company; // 包import java.util.Scanner; public class code {public static void main(String[] args){// 扫描对象,用来扫描系统的输入Scanner input = new Scanner(System.in); int a = input.nextInt(); // 输入一个整型short b = input.nextShort(); // 输入一个短整型long c = input.nextLong(); // 输入一个长整型byte d = input.nextByte(); // 输入一个字节型float f = input.nextFloat(); // 输入一个单精度浮点型double g = input.nextDouble(); // 输入一个双精度浮点型// 输入字符串// nextLine() 和 next()都可以录入String型的,但是next()遇到空格就终止了,nextLine()可以把空格和空格后面的全部录入String s = input.nextLine(); // 录入一行,回车是终止符String ss = input.next(); // 遇到空格或回车都会终止·// 输入一个char类型// 获得用户输入字符串的第一个字符char ch = input.next().charAt(0); }}
?多组输入:
import java.util.Scanner; public class Mian { public static void main(String[] args) {Scanner cin = new Scanner(System.in); // cin是自己定义的,这个是任意的while (cin.hasNext()) {int a = cin.nextInt(); int b = cin.nextInt(); System.out.println(a + b); } }}
?T组输入:
// 使用while循环import java.util.Scanner; public class Mian { public static void main(String[] args) {Scanner cin = new Scanner(System.in); // cin是自己定义的,这个是任意的int T = cin.nextInt(); while (T>0) {int a = cin.nextInt(); int b = cin.nextInt(); System.out.println(a + b); T--; } }}// 使用for循环import java.util.Scanner; public class Mian { public static void main(String[] args) {Scanner cin = new Scanner(System.in); // cin是自己定义的,这个是任意的int T = cin.nextInt(); for(int i=0; i
2.输出
2.1.1 println直接输出
使用语句System.out.println()输出,System.out.println()为输出并换行。
package com.company; public class code {public static void main(String[] args){System.out.println("Hello World"); }}
2.1.2 println输出变量
package com.company; public class code {public static void main(String[] args){int num = 10; System.out.println("num的值为:" + num); }}
输入num的值并且输出
package com.company; import java.util.Scanner; public class code {public static void main(String[] args){Scanner input = new Scanner(System.in); int num = input.nextInt(); System.out.println("num的值为:" + num); }}
2.2.1 print
使用语句System.out.print()输出,System.out.print()为输出但是不会换行,如果想要换行需要\n。print()与println()的作用类似,都是输出,但唯一不同的是print()不会换行。
2.2.2 printf
jdk1.5新增了和C语言中printf函数类似的数据输出方法,
System.out.printf(“格式控制部分”,表达式1,表达式2,……,表达式n);
文章图片
这里的用法与C语言和C++中的类似
package com.company; import java.util.Scanner; public class code {public static void main(String[] args){Scanner input = new Scanner(System.in); int num = input.nextInt(); System.out.printf("num的值为:%d\n" , num); }}
3.输入输出实例
文章图片
package com.company; import java.util.Scanner; public class code {public static void main(String[] args){Scanner input = new Scanner(System.in); // 输入圆的半径double radius = input.nextDouble(); // 计算圆的面积double area = 3.14 * radius * radius; // 输出圆的面积,保留两位小数System.out.printf("%.2f\n",area); // 注意:在Java中double类型用%f输出(与C语言中的不同)}}
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
推荐阅读
- 在vue中使用rules对表单字段进行验证方式
- 在Java中实现让线程按照自己指定的顺序执行
- 供应链|复刻SHEIN,中国跨境供应链大突围 | 钛媒体深度
- javaScript原型和原型链
- springboot中内置tomcat什么时候创建的,又是什么时候启动的()
- Java 线程系列Java 天生就是多线程
- Java后端常见面试题总结
- JAVA经典面试题附答案(持续更新版)
- 解决Java中new|解决Java中new BigDecimal()的坑
- 收购|盈利能力持续下滑,首都在线拟溢价10倍收购中嘉和信股权疑点重重