#83 User Input using BufferedReader and Scanner in Java

Поделиться
HTML-код
  • Опубликовано: 30 июл 2024
  • Check out our courses:
    Spring and Microservices Weekend Live Batch : bit.ly/spring-live-weekend
    Coupon: TELUSKO10 (10% Discount)
    Master Java Spring Development : bit.ly/java-spring-cloud
    Udemy Courses:
    Java:- bit.ly/JavaUdemyTelusko
    Spring:- bit.ly/SpringUdemyTelusko
    Java For Programmers:- bit.ly/javaProgrammers
    For More Queries WhatsApp or Call on : +919008963671
    website : courses.telusko.com/
    In this lecture we are discussing about different ways to take input in java:
    how to take input from user :
    in C++ we use cin
    in C we use scanf()
    in python we use input()
    How to take input in java?
    #1
    using System.in.read()
    -- using System.in.read() we can take single character input only, if we provide multiplecharacterr
    itconsidersr the firstcharacterr of enter sequence.
    -- if we want to show result of multiple character we can use loop (not in video lecture forcuriosityy)
    e.g
    class Main{
    public static void main(String[] args) throws Exception{
    int i =System.in.read(); // read a byte from the keyboard
    System.out.println(i); // print the byte value
    /*
    input: a
    output: 97
    input: A
    output: 65
    input: 345 /considere 3 digit from number
    output: 51
    input: 3456 //consider 3 digit from number
    output: 51
    input: 3
    output: 51
    return ascii value of the input
    */
    // to get actual number
    // 1. convert ascii value to char
    System.out.println((char)i); // print the char value
    // 2. subtract 48 from the ascii value
    System.out.println(i-48); // print the actual number
    //but it is only for single digit number
    // formultiple-digittnumbersr we have to use loop
    // 3. use loop
    int n=0;
    while(i!=13){ // 13 is ascii value of enter key
    n=n*10+(i-48);
    i=System.in.read();
    }
    System.out.println(n);
    }
    }
    using InputStreamReader class:
    In Java, the InputStreamReader class is used to read data from an input stream and convert it into characters.
    It is often used with the BufferedReader class, which provides a buffered way to read characters from an input stream.
    e.g
    class Main{
    public static void main(String[] args) {
    BufferedReader br = null;
    try {
    // create a new InputStreamReader to read from System.in
    InputStreamReader isr = new InputStreamReader(System.in);
    // create a new BufferedReader to read from the InputStreamReader
    br = new BufferedReader(isr);
    System.out.println("Enter your name:");
    // read a line of text from the BufferedReader
    String name = br.readLine();
    System.out.println("Hello, " + name + "!");
    } catch (IOException e) {
    System.err.println("Error reading input: " + e.getMessage());
    }
    finally{
    if(br!=null){
    try{
    br.close();
    }
    catch(IOException e){
    System.out.println("There might some problem to closing the resource");
    }
    }
    }
    }
    }
    Note: if open the resource then close is important
    Use of Scanner Class :
    To make programmer life easy
    Scanner class was introduced in Java 1.5 as part of the Java API to provide an easy way
    to read user input from various sources such as the keyboard.
    a) Reading input through keyboard:
    -- import java.util.Scanner; need to import in java file
    Scanner scanner = new Scanner(System.in);
    System.out.print("Enter your name: ");
    String name = scanner.nextLine();
    System.out.println("Hello, " + name + "!");
    -- Scanner object using the System.in input stream, which represents the keyboard.
    We then use the nextLine() method to read a line of text entered by the user.
    Important: From here this part is not in video, for your cursoity we are put only in this description.
    b) read through file
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.util.Scanner;
    File file = new File("input.txt");
    try {
    Scanner scanner = new Scanner(file);
    while (scanner.hasNextLine()) {
    String line = scanner.nextLine();
    System.out.println(line);
    }
    } catch (FileNotFoundException e) {
    System.out.println("File not found: " + e.getMessage());
    }
    we create a Scanner object using a File object that represents the input file.
    We then use the hasNextLine() and nextLine() methods to read each line of text from the file.
    c) Read input though String
    import java.util.Scanner;
    String input = "156 2 3 4 5";
    Scanner scanner = new Scanner(input);
    while (scanner.hasNextInt()) {
    int number = scanner.nextInt();
    System.out.println(number);
    }
    -- Scanner object using a String object that contains the input. We then use the hasNextInt() and nextInt() methods to read each integer from the string.
    Github repo : github.com/navinreddy20/Javac...
  • НаукаНаука

Комментарии • 55

  • @srimantamondal8769
    @srimantamondal8769 Год назад +28

    Really appreciate the way you taught this concept. Going through each of the class, methods, constructors and showing their implementations. I have never seen someone depicting the whole idea behind BufferedReader before. Thanks for this.

  • @mowafkmha4505
    @mowafkmha4505 Год назад +12

    you deserve more views diving really deep into some details that helps to better understand makes you really special from any other channel,
    I think I found a treasure here

  • @student_03
    @student_03 11 месяцев назад +19

    thanks a lot
    no useless talk
    to the point, crisp short lecture
    does the job

  • @tiwarikartikeya
    @tiwarikartikeya 3 месяца назад +2

    Such clarity and beautiful explanation. You have always been my goto person when I need to understand something which I know I cannot understand from any other video. You are awesome.

  • @yashaswinihm4288
    @yashaswinihm4288 6 месяцев назад +4

    And the beauty is..
    I selected the best playlist to learn java😊.

  • @TheWildStatistician
    @TheWildStatistician 7 месяцев назад

    Going into insane detail! Well done!

  • @nononnomonohjghdgdshrsrhsjgd
    @nononnomonohjghdgdshrsrhsjgd 7 месяцев назад +2

    Wonderful channel. You are one of the few people, which organize his courses in such a way, that i can quickly see in which series, a video is in.

    • @nononnomonohjghdgdshrsrhsjgd
      @nononnomonohjghdgdshrsrhsjgd 7 месяцев назад

      What does "x:" and "a:" mean in Java in System.out.println(x:"Hello")?

    • @vishva8037
      @vishva8037 9 дней назад

      @@nononnomonohjghdgdshrsrhsjgd It is Vscode defaults there is no need to mentioned it

  • @jellyjollyjelly9513
    @jellyjollyjelly9513 7 месяцев назад +1

    precise and on point! love ur style

  • @kingkooper4627
    @kingkooper4627 6 месяцев назад +2

    best channel of the century 🎉🎉

  • @d0msch326
    @d0msch326 Месяц назад

    Great explanation and good examples. Thank you for this good and on point lecture.

  • @ferfykins
    @ferfykins Год назад

    Ty for the video!!! Can scanner class be used with other resources besides command line input? for example a text file, or network input?

  • @milehighgarage
    @milehighgarage Месяц назад

    Great explainer -- tight -- all the best Sir

  • @sonamohialdin3376
    @sonamohialdin3376 Год назад +1

    Very helpful tutorial

  • @michaelp.channel331
    @michaelp.channel331 28 дней назад

    I love your explanation

  • @varadavinay719
    @varadavinay719 9 месяцев назад +2

    10:12 😂😂😂 love your teaching man

  • @mf3396
    @mf3396 10 месяцев назад

    Amazing class

  • @Trading_Club007
    @Trading_Club007 8 месяцев назад +1

    can anyone explain why out is defined null and how it is working with null because when i write this program by classes and calling it in main, it gives an java.lang.NullPointerException

  • @saqibafridi5292
    @saqibafridi5292 10 месяцев назад

    Yes Elian ! I am waiting why you keep this video in #83 and i jumped from #13 video direct to #83 hahahahah

  • @parthisanjay3252
    @parthisanjay3252 4 месяца назад

    So out is a PrintStream type of reference initiated with null, then how it is used to calling println( ) which is a non static method right we need to create a object of PrintStream class so that we can access any non static members in that class

  • @_adarsh_raj_pathak_
    @_adarsh_raj_pathak_ Год назад +1

    Thanks for such deep dive in the class>object>class>method🦖
    Hats Off to your way of explanation 🔥

  • @sakthipriya8653
    @sakthipriya8653 10 месяцев назад +1

    In the description,
    File file = new file("input.txt")
    Should'nt this line be given inside try?

  • @maleeshasandakalum6213
    @maleeshasandakalum6213 11 месяцев назад

    Thank you sir❤❤

  • @Suresh_edits679
    @Suresh_edits679 Год назад +3

    nice sir

  • @alladiakhil7425
    @alladiakhil7425 Год назад +2

    We are not getting the videos in order can you please rearrange it

  • @chandangouda6866
    @chandangouda6866 7 месяцев назад

    Which compiler are you using

  • @nikkg7055
    @nikkg7055 Год назад +2

    one more method PrintWriter..?

  • @shua_the_great
    @shua_the_great 2 месяца назад

    8:54 Telusko casually signaling he's part of the illuminati
    Love the videos btw

  • @yt-1161
    @yt-1161 Год назад

    thumbs up

  • @myvoice7558
    @myvoice7558 Год назад +2

    wow

  • @anshsahu8290
    @anshsahu8290 11 месяцев назад

    Ascii or utf16 🤔

  • @darswayeeyou
    @darswayeeyou 10 месяцев назад +1

    is out an object or object reference?

    • @Trading_Club007
      @Trading_Club007 8 месяцев назад

      it is an object BTW what is object reference

  • @nishant_singh
    @nishant_singh Год назад

    Buffer reader works faster than scanner...

  • @yeeshraj887
    @yeeshraj887 Год назад +1

    Can anyone tell which IDE is this?

  • @syedadil7256
    @syedadil7256 Год назад +2

    Better to use Scanner class right sir?

    • @ankushdhull7312
      @ankushdhull7312 Год назад

      yes....scanner class is far better than bufferedReader class!!

    • @vinayv6729
      @vinayv6729 Год назад +1

      @@ankushdhull7312 but scanner class is very slow

    • @syedadil7256
      @syedadil7256 Год назад

      @@vinayv6729 who cares bro... we need shortcuts

    • @vinayv6729
      @vinayv6729 Год назад +1

      @@syedadil7256 maybe but it does matter in cp.

  • @sidhiqvs9227
    @sidhiqvs9227 2 месяца назад +1

    Scanner was introduced in java 1.5
    People before java 1.5 😅😅

  • @raghavkaushik7266
    @raghavkaushik7266 8 месяцев назад

    In python just write input() done.

    • @yenaremadun7184
      @yenaremadun7184 7 месяцев назад

      but python is slow. There is always a trade off

    • @Progamer-fq8st
      @Progamer-fq8st 5 месяцев назад

      @@yenaremadun7184 in C++ you just write cin LOL

  • @charanmc4484
    @charanmc4484 Год назад +32

    rip Buffer reader 💀🐿️😅

    • @techfreak8854
      @techfreak8854 10 месяцев назад +1

      Do bufferreader still work?

    • @saurabh1087
      @saurabh1087 9 месяцев назад +4

      BufferedReader is faster than Scanner

  • @naqibullahsultan4958
    @naqibullahsultan4958 4 месяца назад

    just waste people time

  • @sanchitbajpaiexp7504
    @sanchitbajpaiexp7504 25 дней назад +2

    Really appreciate the way you taught this concept. Going through each of the class, methods, constructors and showing their implementations. I have never seen someone depicting the whole idea behind BufferedReader before. Thanks for this.