首页 > 编程语言 >Java中的键盘输入类Scanner包的用法

Java中的键盘输入类Scanner包的用法

时间:2024-06-03 21:58:18浏览次数:17  
标签:Java String System 键盘输入 scanner java public Scanner

在Java中,Scanner 类是 java.util 包下的一个实用类,它提供了一种方便的方法来解析从各种输入源(如文件、字符串或控制台)读取的原始数据。Scanner 类使用了正则表达式来解析输入的数据,因此它非常强大且灵活。

以下是一些使用 Scanner 类的常见场景和示例:

1. 从控制台读取输入

import java.util.Scanner;

public class ScannerExample {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个整数:");
        int number = scanner.nextInt();
        System.out.println("你输入的整数是:" + number);
        scanner.close();
    }
}

2. 从字符串中读取数据

import java.util.Scanner;

public class ScannerExample {
    public static void main(String[] args) {
        String input = "Hello, 123 world!";
        Scanner scanner = new Scanner(input);
        while (scanner.hasNext()) {
            if (scanner.hasNextInt()) {
                int number = scanner.nextInt();
                System.out.println("找到整数:" + number);
            } else {
                String word = scanner.next();
                System.out.println("找到单词:" + word);
            }
        }
        scanner.close();
    }
}

3. 从文件中读取数据

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class ScannerExample {
    public static void main(String[] args) {
        try {
            File file = new File("example.txt");
            Scanner scanner = new Scanner(file);
            while (scanner.hasNextLine()) {
                String line = scanner.nextLine();
                System.out.println(line);
            }
            scanner.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
}

注意:在使用完 Scanner 对象后,最好关闭它以释放与之相关联的资源。如果你从 System.in 创建了一个 Scanner 对象,并且在你的程序的整个生命周期中都使用它,那么通常不需要关闭它,因为JVM会在程序结束时自动关闭它。但是,如果你从文件或其他类型的输入源创建了 Scanner 对象,那么最好在使用完它后关闭它。

红客网:blog.hongkewang.cn

标签:Java,String,System,键盘输入,scanner,java,public,Scanner
From: https://blog.csdn.net/bbos2004/article/details/139423933

相关文章

  • JAVA学习笔记6
    学习目标:精通JAVA学习内容:1.方法调用packagecn.itcast.day04.demo02;/*publicclassDemo01Method{publicstaticvoidmain(String[]args){for(intj=1;j<5;j++){for(inti=1;i<20;i++){System.out.print(“*”);}System.out.println();}}}......
  • java使用百度地图接口校验收货地址是否超出配送范围
    1.地理编码API服务地址:https://api.map.baidu.com/geocoding/v3/?address=北京市海淀区上地十街10号&output=json&ak=您的ak&callback=showLocationMapmap=newHashMap();map.put("address",shopAddress);map.put("output","......
  • 关于java类型转换题目
    publicclasstest2{publicstaticvoidmain(String[]args){System.out.println(zh(123));df();ca();longToInt();ByteToShort();booleanToString();conversion();FloatToDouble();IntToCha......
  • java 线程池 Executors原生三大方法
    packagecom.chen.pool;importjava.util.concurrent.ExecutorService;importjava.util.concurrent.Executors;publicclassTest1{publicstaticvoidmain(String[]args){//平时我们创建一些类使用工具类操作s//总数可以管理//线程池Executors原生三大方法......
  • 【精品毕设】基于JavaEE的线上考试系统设计实现(包含源码和论文)
    摘 要随着计算机技术的迅猛发展,学校教学和管理的信息化发展也有长足的进步,这就要求各个环节都均衡发展,从软硬件双方面把学校建设成一流的信息管理、教育教学的平台。本文设计开发的考试管理系统也是其中重要的一个方面。该系统本着减轻教师工作负担、提高工作效率、优化学生......
  • java毕业设计之网上书城系统(ssm项目源码+LW+PPT)
    1项目介绍本系统主要包括管理员和用户;主要包括:个人中心、用户管理、图书类型管理、热卖图书管理、管理员管理、系统管理、订单管理等功能的管理系统。2、项目技术项目后端框架:Java+ssm项目前端框架:vue2,ssm3、开发环境ssm+vue环境说明:环境说明:开发语言:java框架:ssm......
  • java毕业设计之校园旧书交易交换平台(ssm项目源码+LW+PPT)
    1项目介绍本系统主要包括以下功能模块:主页、个人中心、学生管理、发布人管理、书籍分类管理、书籍信息管理、交易信息管理、交换信息管理、系统管理等模块,通过这些模块的实现能够基本满足日常校园旧书交易交换的操作。2、项目技术项目后端框架:Java+ssm项目前端框架:vue......
  • java毕业设计之影院管理系统(ssm项目源码+LW+PPT)
    1项目介绍本系统主要针对管理员和用户角色,主要包括:个人中心,电影信息管理,电影类型管理,系统管理,订单管理等功能的界面。2、项目技术项目后端框架:Java+ssm项目前端框架:vue2,ssm3、开发环境ssm+vue环境说明:环境说明:开发语言:java框架:ssm,vueJDK版本:JDK1.8数据库:mysql......
  • Java 多线程的创建
    Java多线程的创建Java元的JVM允许程序运行多个线程,使用java.lang.Thread类代表线程,所有的线程对象都必须是Thread类或其子类线程的创建方式有两种,一者为继承Thread类,一者为实现Runnable接口实现方式之一:继承Thread类实现步骤Java通过继承Thread类来创建并启动多线程......
  • java 中byte的取值范围
    众所周知,java中byte的取值范围-128~127,那么为什么呢?java中二进制是采用补码运算的,其中最高位0代表正数1代表负数。正数的正码,反码,补码相同,负数补码=反码+1。举例:-10正码:10001010反码:11110101补码:11110110一字节byte占8bit位。那么正数范围为00000000~0111111......