Detailed 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.
- 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.
- 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
- 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
- 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
- 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!

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

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

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

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

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.

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

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

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.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

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

Hot Article

Hot Tools

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

SublimeText3 Chinese version
Chinese version, very easy to use

Dreamweaver Mac version
Visual web development tools

SublimeText3 English version
Recommended: Win version, supports code prompts!
