webForumDet fria alternativet

Programmet bryts inte

7 svar · 625 visningar · startad av Re-JeeP

Re-JeePMedlem sedan sep. 200642 inlägg
#1

Hej!

Hur kommer det sig att programmet inte bryts när jag trycker enter?

Det funkar om jag använder sc.nextLine() istället för sc.next()

import java.util.*;

public class B
{
	public static void main(String[] args)
	{
		while(true)
		{
			Scanner sc = new Scanner(System.in);
			
			if(sc.next().equals(""))
				System.exit(0);
		}
	}
}

Mvh // Johan

jmeMedlem sedan maj 20012 237 inlägg
#2

För mig bryts den om jag inte skriver nåt och bara trycker på enter.

Re-JeePMedlem sedan sep. 200642 inlägg
#3

jme skrev:

För mig bryts den om jag inte skriver nåt och bara trycker på enter.

Sorry, använde nextLine() i koden. Har ändrat det nu.

Kolla om den bryts nu!

jmeMedlem sedan maj 20012 237 inlägg
#4

Om du inte skriver in nåt och trycker på enter så väntar den fortfarande på input från användaren.

Varför inte köra med nextLine()?

Re-JeePMedlem sedan sep. 200642 inlägg
#5

jme skrev:

Om du inte skriver in nåt och trycker på enter så väntar den fortfarande på input från användaren.

Varför inte köra med nextLine()?

För att jag bara vill läsa in ett ord.

jmeMedlem sedan maj 20012 237 inlägg
#6

Kan du inte läsa in en hel rad och därefter bryta ut första ordet ur strängen?

LimeMedlem sedan sep. 2001961 inlägg
#7

Du använder Scanner-klassen lite fel...

Du bör skriva såhär:

import java.util.*; 

public class B 
{ 
    public static void main(String[] args) 
    { 

       Scanner sc = new Scanner(System.in); 

        while(sc.hasNext()) 
        {             
            System.out.println(sc.next());               
        } 
        System.exit(0); 
    } 
}
Re-JeePMedlem sedan sep. 200642 inlägg
#8

Lime skrev:

Du använder Scanner-klassen lite fel...

Du bör skriva såhär:

import java.util.*; 

public class B 
{ 
    public static void main(String[] args) 
    { 

       Scanner sc = new Scanner(System.in); 

        while(sc.hasNext()) 
        {             
            System.out.println(sc.next());               
        } 
        System.exit(0); 
    } 
}

Ahh... snyggt! Tackar!

130 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)