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<T;i++)
		 {
			int a = cin.nextInt();
			int b = cin.nextInt();
			System.out.println(a + b);
		}
	}
}

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语言中的不同)
    }
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Java中输入输出方式的简单示例

    目录 概述 一.输出到控制台 (一).基本语法 (二).代码示例 (三).格式化字符串 二.从键盘输入 1.使用 Scanner 读取字符串/整数/浮点数 2.输入数据类型的方法 3.注意事项: 总结 概述 输入输出可以说是计算机的基本功能.作为一种语言体系,java中主要按照流(stream)的模式来实现.其中数据的流向是按照计算机的方向确定的,流入计算机的数据流叫做输入流(inputStream),由计算机发出的数据流叫做输出流(outputStream). Java语言体系中,对数据流的主

  • Java中常用数据类型的输入输出详解

    目录 1.Char型 1.1  输入格式: 1.2  举例说明 2.int型 1.1  简单的int格式输入: 1.2  举例说明 2.1带空格的int格式输入 : 2.2  举例说明 3.1  复杂int格式的输入 3.2  举例说明 3.double型 4.多次输入 1.1  输入格式 1.2  举例说明 5.数组 1.1  数组输入格式: 2.1  数组转换成字符串 6.字符串 1.1  字符串转换成整型,浮点型(以整型为例) 1.2  整型,浮点型转换成字符串 2.1  字符串转换成字符

  • Java中输入与输出的方法总结

    目录 输入方法 第一种输入方法:scanner 第二种输入方法:JOptionPane 第三种输入方法:io.Console 输出方法 第一种输出方法:System.out.print() 第二种输出方法:System.out.println() 第三种输出方法:System.out.printf() 输入方法 第一种输入方法:scanner import java.util.Scanner; // 导入java.util.Scanner public class User {     publ

  • Java中两种基本的输入方式小结

    目录 两种基本的输入方式 1.使用Scanner类 2.使用System.in.read();方法 输入与输出的使用讲解 1.输入 2.输出 3.输入输出实例 两种基本的输入方式 1.使用Scanner类 需要java.util包 构造Scanner类的对象,附属于标准输入流System.in,之后通过其中的方法获得输入. 常用的方法:nextLine();(字符串),nextInt();(整型数),nextDouble();(双精度型数)等等. 结束时使用close();方法关闭对象. 例子:

  • 详解Java中两种分页遍历的使用姿势

    在日常开发中,分页遍历迭代的场景可以说非常普遍了,比如扫表,每次捞100条数据,然后遍历这100条数据,依次执行某个业务逻辑:这100条执行完毕之后,再加载下一百条数据,直到扫描完毕 那么要实现上面这种分页迭代遍历的场景,我们可以怎么做呢 本文将介绍两种使用姿势 常规的使用方法 借助Iterator的使用姿势 1. 数据查询模拟 首先mock一个分页获取数据的逻辑,直接随机生成数据,并且控制最多返回三页 public static int cnt = 0; private static List

  • 一起聊聊Java中13种锁的实现方式

    目录 1.悲观锁 2.乐观锁 3.分布式锁 加锁 4.可重入锁 5.自旋锁 6.独享锁 7.共享锁 8.读锁/写锁 9.公平锁/非公平锁 10.可中断锁/不可中断锁 11.分段锁 12.锁升级(无锁|偏向锁|轻量级锁|重量级锁) 无锁 偏向锁 轻量级锁 重量级锁 13.锁优化技术(锁粗化.锁消除) 最近有很多小伙伴给我留言,分布式系统时代,线程并发,资源抢占,"锁" 慢慢变得很重要.那么常见的锁都有哪些? 今天Tom哥就和大家简单聊聊这个话题. 1.悲观锁 正如其名,它是指对数据修改时

  • Feign调用中的两种Header传参方式小结

    目录 Feign调用中的两种Header传参方式 在请求拦截器中统一配置 通过@RequestHeader注解 调用feign接口时,如何往header中添加参数 总结 Feign调用中的两种Header传参方式 在Spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端. 我们可以使用JDK原生的URLConnection.Apache的Http Client.Netty的异步HTTP Client, Spri

  • go语言中五种字符串的拼接方式(小结)

    目录 +拼接方式 sprintf函数 Join函数 buffer.Builderbuffer.WriteString函数 buffer.Builder函数 ps:直接使用运算符 主要结论 +拼接方式 这种方式是我在写golang经常用的方式,go语言用+拼接,php使用.拼接,不过由于golang中的字符串是不可变的类型,因此用 + 连接会产生一个新的字符串对效率有影响. func main() { s1 := "hello" s2 := "word" s3 :=

  • 基于Java中两种jersey文件上传方式

    本文将带领大家使用基于JAX-RS REST风格的实现Jersey来上传文件到服务器制定的文件夹,如果是图片并读取显示出该图片. 准备工作:准备一个form表单,有两个字段,一个是type="file"和type="text",并且表单需要使用POST方式提交.注意改表单需要使用multipart/form-data.该项目使用netbeans8.0和glassfish4.0开发和运行.并且使用maven管理该工程:需要在您的C盘建立一个文件夹,用来存储上传的文件.

  • Java中集合和数组的排序方式小结

    根据约定,在使用java编程的时候应尽可能的使用现有的类库,当然你也可以自己编写一个排序的方法,或者框架,但是有几个人能写得比JDK里的还要好呢?使用现有的类的另一个好处是代码易于阅读和维护,这篇文章主要讲的是如何使用现有的类库对数组和各种Collection容器进行排序,(文章中的一 部分例子来自<Java Developers Almanac 1.4>) 首先要知道两个类:java.util.Arrays和java.util.Collections(注意和Collection的区 别)Co

  • 浅谈Java的两种多线程实现方式

    本文介绍了浅谈Java的两种多线程实现方式,分享给大家.具有如下: 一.创建多线程的两种方式 Java中,有两种方式可以创建多线程: 1 通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中 2 通过实现Runnable接口,实例化Thread类 在实际应用中,我们经常用到多线程,如车站的售票系统,车站的各个售票口相当于各个线程.当我们做这个系统的时候可能会想到两种方式来实现,继承Thread类或实现Runnable接口,现在看一下这两种方式实现的两种结果. 程序1

  • Java中5种方式实现String反转

    这里介绍Java中5中实现String反转的方式. 一.数组实现String反转 //数组实现String反转 public String reverseByArray(){ if(str == null || str.length() == 1){ return null; } char[] ch = str.toCharArray();//字符串转换成字符数组 for(int i = 0 ; i < ch.length/2 ; i++){ char temp = ch[i]; ch[i] =

  • Java中四种9*9乘法表的实现方式(附代码)

    前言: 初学java,实现99乘法表是必学必会的内容. 需求 : 分别写出上下左右,对应四个角的乘法表. 思路: 可以先打印出*星星,形成一个直角三角形,然后再替换成乘法公式. 代码如下: public class Demo { public static void main(String[] args) { for (int i = 1; i <=5 ; i++) { for (int j = 1; j <=i; j++) { System.out.print("* ")

随机推荐