LINUX.ORG.RU

История изменений

Исправление twinpeaks, (текущая версия) :

В Java - в принципе, нельзя так объявить даже 1 + ‘2’.

Придется объявлять переменные в классе, аля так (как и складывать «в твоем понимании»):

class Foo {
    private int _a = 1;
    private Character _b = 'c';

    public Character testAddition() {
        var result = _a + _b;
        System.out.println(result);
        return result;
    }
}

P.S. да, «var» появился в Java с версии 10. Стало аля, как в C#.

tz4678 ★★ (20.11.21 21:17:39)

Java даже не ругнется на такое…

Во-первых, ты тут получишь ошибку на этапе компиляции только:

Incompatible types. Found: ‘int’, required: ‘java.lang.Character’

Во-вторых, тебе нужно было для более жирного примера для наброса говна на вентилятор взять string-тип, а не char-тип. Тогда бы скомпилировалось и немного по-солиднее было бы для наброса в ЛОР… Но, опять же… Ты не учел один момент. Что спутал мягкое с теплым. Твой пример с Python - нерелевантен с Java, ибо:

Когда в Java, ты «типа» складываешь строку и целое число вместе, то Java выполняет «конкатенацию строк», где преобразует целое число в строку и прикрепляет ее к концу другой строки. Ибо, в Java предусмотрена специальная поддержка оператора конкатенации строк (+) и преобразования других объектов в строки. Преобразования строк осуществляются с помощью метода toString(), определенного Object и наследуется всеми классами в Java.

Посему, прежде чем постить «типа» сравнение - думай. Твой пример, мягко говоря, крайне некорректный для сравнения.

tz4678 ★★ (20.11.21 21:17:39)

… А C++/Java - это языки со слабой типизаций…

То что в языках С++/Java, в некоторых кейсах происходят эффекты «каламбура типизации и автоприведения типов» засчет подкапотной работы reinterpret_cast (С++) или особенностей системы преобразования типов в самой Java… То, это еще не делает их pure «слабо-типизированными».

Исправление twinpeaks, :

В Java - в принципе, нельзя так объявить даже 1 + ‘2’.

Придется объявлять переменные в классе, аля так (как и складывать «в твоем понимании»):

class Foo {
    private int _a = 1;
    private Character _b = 'c';

    public Character testAddition() {
        var result = _a + _b;
        System.out.println(result);
        return result;
    }
}

P.S. да, «var» появился в Java с версии 10. Стало аля, как в C#.

tz4678 ★★ (20.11.21 21:17:39)

Java даже не ругнется на такое…

Во-первых, ты тут получишь ошибку на этапе компиляции только:

Incompatible types. Found: ‘int’, required: ‘java.lang.Character’

Во-вторых, тебе нужно было для более жирного примера для наброса говна на вентилятор взять string-тип, а не char-тип. Тогда бы скомпилировалось и немного по-солиднее было бы для наброса в ЛОР… Но, опять же… Ты не учел один момент. Что спутал мягкое с теплым. Твой пример с Python - нерелевантен с Java, ибо:

Когда в Java, ты «типа» складываешь строку и целое число вместе, то Java выполняет «конкатенацию строк», где преобразует целое число в строку и прикрепляет ее к концу другой строки. Ибо, в Java предусмотрена специальная поддержка оператора конкатенации строк (+) и преобразования других объектов в строки. Преобразования строк осуществляются с помощью метода toString(), определенного Object и наследуется всеми классами в Java.

Посему, прежде чем постить «типа» сравнение - думай. Твой пример, мягко говоря, крайне некорректный для сравнения.

tz4678 ★★ (20.11.21 21:17:39)

… А C++/Java - это языки со слабой типизаций…

То, что в языках в некоторых кейсах происходят эффекты каламбура типизации и автоприведения типов засчет подкапотной работы reinterpret_cast в случае С++ или особенностей системы преобразования типов в Java, то это еще не делает их pure «слабо-типизированными».

Исправление twinpeaks, :

В Java - в принципе, нельзя так объявить даже 1 + ‘2’.

Придется объявлять переменные в классе, аля так (как и складывать «в твоем понимании»):

class Foo {
    private int _a = 1;
    private Character _b = 'c';

    public Character testAddition() {
        var result = _a + _b;
        System.out.println(result);
        return result;
    }
}

P.S. да, «var» появился в Java с версии 10. Стало аля, как в C#.

Во-первых, ты тут получишь ошибку на этапе компиляции только:

Incompatible types. Found: ‘int’, required: ‘java.lang.Character’

Во-вторых, тебе нужно было для более жирного примера для наброса говна на вентилятор взять string-тип, а не char-тип. Тогда бы скомпилировалось и немного по-солиднее было бы для наброса в ЛОР… Но, опять же… Ты не учел один момент. Что спутал мягкое с теплым. Твой пример с Python - нерелевантен с Java, ибо:

Когда в Java, ты «типа» складываешь строку и целое число вместе, то Java выполняет «конкатенацию строк», где преобразует целое число в строку и прикрепляет ее к концу другой строки. Ибо, в Java предусмотрена специальная поддержка оператора конкатенации строк (+) и преобразования других объектов в строки. Преобразования строк осуществляются с помощью метода toString(), определенного Object и наследуется всеми классами в Java.

Посему, прежде чем постить «типа» сравнение - думай. Твой пример, мягко говоря, крайне некорректный для сравнения.

Исходная версия twinpeaks, :

В Java - в принципе, нельзя так объявить даже 1 + ‘2’.

Придется объявлять переменные в классе, аля так (как и складывать «в твоем понимании»):

class Foo {
    private int _a = 1;
    private Character _b = 'c';

    public Character testAddition() {
        var result = _a + _b;
        System.out.println(result);
        return result;
    }
}

P.S. да, «var» появился в Java с версии 10. Стало аля, как в C#.

Во-первых, ты тут получишь ошибку на этапе компиляции только:

Incompatible types. Found: ‘int’, required: ‘java.lang.Character’

Во-вторых, тебе нужно было для более жирного примера для наброса говна на вентилятор взять string-тип, а не char-тип. Тогда бы немного по-солиднее было бы… Но, опять же… Ты не учел один момент. Что спутал мягкое с теплым. Твой пример с Python - нерелевантен с Java, ибо:

Когда в Java, ты «типа» складываешь строку и целое число вместе, то Java выполняет «конкатенацию строк», где преобразует целое число в строку и прикрепляет ее к концу другой строки. Ибо, в Java предусмотрена специальная поддержка оператора конкатенации строк (+) и преобразования других объектов в строки. Преобразования строк осуществляются с помощью метода toString(), определенного Object и наследуется всеми классами в Java.

Посему, прежде чем постить «типа» сравнение - думай. Твой пример, мягко говоря, крайне некорректный для сравнения.