Daljeet12
Daljeet12

Reputation: 73

How to get and print string in java

I can get and print the integer value in java but I am confuse how to get and print string. Can someone help

package hello;

import java.util.Scanner;

public class hello {

    public static void main(String[] args) {

        int integer;

        System.out.println("Please Enter Integer");

        Scanner sc = new Scanner(System.in);

        integer = sc.nextInt();

        sc.close();


        System.out.println("you entered : " +integer);


    }
}

Program output

Please Enter Integer
5
you entered : 5

I am stuck in this program. I don't understand how to get string and print on screen

import java.util.Scanner;

public class hello {

    public static void main(String[] args) {

        int name;

        Scanner sc = new Scanner(System.in);

        System.out.println("Enter your name");


        name = sc.nextInt(); 

         sc.close();

         System.out.println("Your name"+name);


    }
}

Upvotes: 1

Views: 8924

Answers (4)

wrongMAJOR
wrongMAJOR

Reputation: 13

change int name to string name and use sc.nextLine()

import java.util.Scanner;

public class hello {

    public static void main(String[] args) {

        String name;

        Scanner sc = new Scanner(System.in);

        System.out.println("Enter your name");


        name = sc.nextLine(); 

         sc.close();

         System.out.println("Your name"+name);


    }
}

Upvotes: 0

Crammeur
Crammeur

Reputation: 688

You need to change your type value name from int to String. And replace sc.nextInt() by sc.nextLine() or sc.next().

Example

public static void main(String[] args) {

    String name;

    Scanner sc = new Scanner(System.in);

    System.out.println("Enter your name");


    name = sc.nextLine();

    sc.close();

    System.out.println("Your name " + name);

}

Upvotes: 2

Comp
Comp

Reputation: 134

name = sc.nextInt(); doesn't work for strings, only for integers, you should use sc.nextline instead. And also you have to change int name to String name, due to other type of variable.

Your code should look like this:

 import java.util.Scanner;

public class hello {

    public static void main(String[] args) {

        String name;

        Scanner sc = new Scanner(System.in);

        System.out.println("Enter your name");


        name = sc.nextLine(); 

         sc.close();

         System.out.println("Your name"+name);


    }
}

Upvotes: 0

Vaibhav Singh
Vaibhav Singh

Reputation: 187

Use sc.nextLine() for reading string inputs or sc.next() (But this will read only a word before it encounters a space)

You can also use InputStreamReader for this purpose

eg.

BufferedReader br = new BufferedReader(new InputStreamReader(System.in()));

String input = br.readLine();

Upvotes: 0

Related Questions