• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Krótki program ma za zadanie po wpisaniu liczby przez użytkownika liczby <= 15 zwrócić komunikat. help ? :)

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
367 wizyt
pytanie zadane 27 lipca 2018 w Java przez Tomasstom Użytkownik (650 p.)
import java.util.Scanner;
public class Liczba {
    public static void main(String[] args) {


        String Liczba;
        int x=15;
        Scanner input1 = new Scanner(System.in);
        System.out.println("Podaj liczbe: ");
        Liczba = input1.nextLine();


        if (x <= Liczba) {
            System.out.println("Nie miesci sie");
        } else {
            System.out.println("Miesci sie");
        }

    }
}

Błędy

Error:(13, 15) java: bad operand types for binary operator '<='
  first type:  int
  second type: java.lang.String

 

3 odpowiedzi

+2 głosów
odpowiedź 27 lipca 2018 przez Wiciorny Ekspert (278,710 p.)
Liczba = input1.nextLine();

Pobierany do liczby jest string

użyj do tego 

Liczba = input1.nextInt();

wtedy liczba zostanie pobrana jako Int, co i tak nie rozwiązuje problemu dlaczego ?

x <= Liczba 

porównywany jest prymitywny int z Stringiem....nie ma binarnego ( prostego ) operatora aby to wykonać   if oczekuje warunku logicznego stąd możesz to zamienic np. kożystając z Integer.parseInt(liczba); 

podaje link do przykładu wtedy zwróci Ci liczbe w postaci int :) 

import java.util.Scanner;
public class Liczba {
    public static void main(String[] args) {
 
 
        String liczba;
        int x=15;
        Scanner input1 = new Scanner(System.in);
        System.out.println("Podaj liczbe: ");
        liczba = input1.nextLine();
        int value= Integer.parseInt(liczba);
 
        if (x <= value ) {
            System.out.println("Nie miesci sie");
        } else {
            System.out.println("Miesci sie");
        }
 
    }
}

 

0 głosów
odpowiedź 27 lipca 2018 przez OdsetekGlupoty Pasjonat (15,360 p.)
Witam,

Nie programuję w Javie, ale widać błąd na kilometr. Zobacz - liczba to jest string (tylko napis), a x to jest integer (liczba całkowita) - dwa inne typy danych. Porównujesz napis do liczby, należy użyć metody parseInt(). Poczytaj o tym :)
0 głosów
odpowiedź 27 lipca 2018 przez miro Pasjonat (23,870 p.)
Komunikat ładnie tłumaczy gdzie leży błąd.

Możesz zmienną (w javie zmienne piszemy z małej) Liczba zamienić na typ int, a zamiast nextLine użyć metodę nextInt.
1
komentarz 28 lipca 2018 przez Wiciorny Ekspert (278,710 p.)

a zamiast nextLine użyć metodę nextInt

nie zadziałą na jego przypadku gdyż liczba jest typu String: a jak wiadomo :)

incompatible types: int cannot be converted to String

 więc parsowanie Inta lepsze rozwiązanie, albo po prostu ze skanera tak jak mówisz użyć 

metodę nextInt.

zapisując do nowej zmienner 

int value = input.nextInt();

 

komentarz 28 lipca 2018 przez miro Pasjonat (23,870 p.)

nie zadziałą na jego przypadku gdyż liczba jest typu String

Przecież napisałem, aby zamienić ją na typ int. Ja jednak wolałbym mieć zmienną liczba która faktycznie jest typem numerycznym, a nie stringiem. 

Podobne pytania

0 głosów
1 odpowiedź 362 wizyt
0 głosów
1 odpowiedź 933 wizyt
–1 głos
0 odpowiedzi 106 wizyt

93,180 zapytań

142,193 odpowiedzi

321,991 komentarzy

62,511 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 1873p. - dia-Chann
  2. 1848p. - Łukasz Piwowar
  3. 1831p. - CC PL
  4. 1827p. - Łukasz Eckert
  5. 1769p. - Michal Drewniak
  6. 1761p. - Łukasz Siedlecki
  7. 1758p. - rucin93
  8. 1708p. - Adrian Wieprzkowicz
  9. 1668p. - Mikbac
  10. 1621p. - rafalszastok
  11. 1572p. - Tomasz Bielak
  12. 1506p. - Marcin Putra
  13. 1356p. - ssynowiec
  14. 1289p. - Anonim 3619784
  15. 1169p. - Grzegorz Aleksander Klementowski
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...