История изменений
Исправление
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.
Посему, прежде чем постить «типа» сравнение - думай. Твой пример, мягко говоря, крайне некорректный для сравнения.