Я не могу преобразовать int в логическое значение в Java в следующем коде - PullRequest
0 голосов
/ 14 октября 2018
public class Typecast {

    public static void main(String[] args) {
        int a=0;
        boolean b=(boolean)a;
        System.out.println(b);
    }
}

Это выдает мне ошибку "Не могу привести от int к логическому значению". Может кто-нибудь помочь?

Ответы [ 4 ]

0 голосов
/ 14 октября 2018

Что ты думаешь здесь?Что вы пытаетесь сделать именно?

Думаете ли вы, что 0 приведёт к ложному, а 1 - к двоичному?Как уже упоминалось, целое число является числовым типом данных и может быть приведено только к другим числам.

Он также может быть преобразован в строку с использованием классов-оболочек.Т.е.: String str = Integer.toString (a)

Если вы пытаетесь преобразовать 0s в логическое значение, попробуйте эту строку кода, чтобы заменить вашу строку3:

b = (a! = 0);

Если вы

0 голосов
/ 14 октября 2018

Вы не можете разыграть целое число в логическое значение в Java.int - это тип примитива, значение которого находится в диапазоне от -2 147 483 648 до 2 147 483 647, а логическое значение имеет значение true или false.Поэтому приведение числа к логическому (true или false) не имеет смысла и не разрешено в java.

Вам необходимо проверить основные типы данных в java, что даст вам больше ясности.

0 голосов
/ 14 октября 2018

Вы не можете привести int к логическому значению;но вы можете сравнить это int с другим числом, и это выражение сравнения будет иметь логический тип, например:

boolean b = (a != 0);
0 голосов
/ 14 октября 2018

Не каждый тип может быть приведен к другому.int до boolean является одним из тех, которые не разрешены в Java. Спецификация языка Java объясняет, что есть, а что нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...