search
HomeJavajavaTutorialDetailed explanation of Scanner operation in Java

Scanner is a commonly used class in Java, used to read input data from the console or file. It provides a simple way to parse basic types and strings, and supports matching regular expressions.

The Scanner class is located in the java.util package, so you need to import this package when writing a program. Before we start using Scanner, we need to create a Scanner object to access the input source.

The syntax for creating a Scanner object is:

Scanner scanner = new Scanner(System.in);

The above code creates a Scanner object, which can be used to read data from the standard input stream. In addition, we can also use other input streams to create Scanner objects.

Let’s take a look at some commonly used Scanner operations.

  1. Reading a string

We can use the next() method to read a string, which will read the next word in the console input and Returns a string.

Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.next();
System.out.println("你输入的字符串是:" + str);

The above code runs the result:

请输入一个字符串:Hello World!
你输入的字符串是:Hello

The above code only reads the first word "Hello" in the input, because the next() method uses spaces to separate the input characters by default. string, so it will only read the first word in the input. If you need to read the entire string, you can use the nextLine() method.

  1. Reading integers

We can use nextInt() or nextLong() to read an integer or long integer. If the input is not a numeric type, it will throw InputMismatchException exception.

Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个整数:");
int num = scanner.nextInt();
System.out.println("你输入的整数是:" + num);

The above code results:

请输入一个整数:123
你输入的整数是:123
  1. Read floating point data

We can use nextFloat() or nextDouble() to read Get a floating point data. If the input is not floating point data, an InputMismatchException will be thrown.

Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个浮点数:");
float f = scanner.nextFloat();
System.out.println("你输入的浮点数是:" + f);

The above code runs the result:

请输入一个浮点数:3.14
你输入的浮点数是:3.14
  1. Read Boolean type data

We can use the nextBoolean() method to read a Boolean type Data, if the input value is not true or false, an InputMismatchException will be thrown.

Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个布尔值(true/false):");
boolean b = scanner.nextBoolean();
System.out.println("你输入的布尔值是:" + b);

The above code runs the result:

请输入一个布尔值(true/false):true
你输入的布尔值是:true
  1. Reading regular expressions

Scanner also provides a findInLine() method to read regular expressions expression. This method reads the first occurrence of the regular expression in the console input and returns a matching string.

Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个正则表达式:");
String pattern = scanner.findInLine("\d+");
System.out.println("你输入的正则表达式匹配的字符串是:" + pattern);

The above code execution result:

请输入一个正则表达式:Hello 123 World!
你输入的正则表达式匹配的字符串是:123

The above are some common operations of the Scanner class. I hope it will be helpful to everyone learning Java.

The above is the detailed content of Detailed explanation of Scanner operation in Java. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
JVM performance vs other languagesJVM performance vs other languagesMay 14, 2025 am 12:16 AM

JVM'sperformanceiscompetitivewithotherruntimes,offeringabalanceofspeed,safety,andproductivity.1)JVMusesJITcompilationfordynamicoptimizations.2)C offersnativeperformancebutlacksJVM'ssafetyfeatures.3)Pythonisslowerbuteasiertouse.4)JavaScript'sJITisles

Java Platform Independence: Examples of useJava Platform Independence: Examples of useMay 14, 2025 am 12:14 AM

JavaachievesplatformindependencethroughtheJavaVirtualMachine(JVM),allowingcodetorunonanyplatformwithaJVM.1)Codeiscompiledintobytecode,notmachine-specificcode.2)BytecodeisinterpretedbytheJVM,enablingcross-platformexecution.3)Developersshouldtestacross

JVM Architecture: A Deep Dive into the Java Virtual MachineJVM Architecture: A Deep Dive into the Java Virtual MachineMay 14, 2025 am 12:12 AM

TheJVMisanabstractcomputingmachinecrucialforrunningJavaprogramsduetoitsplatform-independentarchitecture.Itincludes:1)ClassLoaderforloadingclasses,2)RuntimeDataAreafordatastorage,3)ExecutionEnginewithInterpreter,JITCompiler,andGarbageCollectorforbytec

JVM: Is JVM related to the OS?JVM: Is JVM related to the OS?May 14, 2025 am 12:11 AM

JVMhasacloserelationshipwiththeOSasittranslatesJavabytecodeintomachine-specificinstructions,managesmemory,andhandlesgarbagecollection.ThisrelationshipallowsJavatorunonvariousOSenvironments,butitalsopresentschallengeslikedifferentJVMbehaviorsandOS-spe

Java: Write Once, Run Anywhere (WORA) - A Deep Dive into Platform IndependenceJava: Write Once, Run Anywhere (WORA) - A Deep Dive into Platform IndependenceMay 14, 2025 am 12:05 AM

Java implementation "write once, run everywhere" is compiled into bytecode and run on a Java virtual machine (JVM). 1) Write Java code and compile it into bytecode. 2) Bytecode runs on any platform with JVM installed. 3) Use Java native interface (JNI) to handle platform-specific functions. Despite challenges such as JVM consistency and the use of platform-specific libraries, WORA greatly improves development efficiency and deployment flexibility.

Java Platform Independence: Compatibility with different OSJava Platform Independence: Compatibility with different OSMay 13, 2025 am 12:11 AM

JavaachievesplatformindependencethroughtheJavaVirtualMachine(JVM),allowingcodetorunondifferentoperatingsystemswithoutmodification.TheJVMcompilesJavacodeintoplatform-independentbytecode,whichittheninterpretsandexecutesonthespecificOS,abstractingawayOS

What features make java still powerfulWhat features make java still powerfulMay 13, 2025 am 12:05 AM

Javaispowerfulduetoitsplatformindependence,object-orientednature,richstandardlibrary,performancecapabilities,andstrongsecurityfeatures.1)PlatformindependenceallowsapplicationstorunonanydevicesupportingJava.2)Object-orientedprogrammingpromotesmodulara

Top Java Features: A Comprehensive Guide for DevelopersTop Java Features: A Comprehensive Guide for DevelopersMay 13, 2025 am 12:04 AM

The top Java functions include: 1) object-oriented programming, supporting polymorphism, improving code flexibility and maintainability; 2) exception handling mechanism, improving code robustness through try-catch-finally blocks; 3) garbage collection, simplifying memory management; 4) generics, enhancing type safety; 5) ambda expressions and functional programming to make the code more concise and expressive; 6) rich standard libraries, providing optimized data structures and algorithms.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!