Вот вариант отличного решения от ephemient. Это позволяет вам передавать несколько строк в другую программу без фактического создания текстового файла и ввода, перенаправляя его в вашу программу:
(@echo.bla
@echo.bla
) | yourprog.exe
Для быстрого рабочего примера вы можете заменить yourprog.exe
на more
:
(@echo.bla
@echo.bla
) | more
Вывод:
bla
bla
Удивительно, но когда вы выполняете операции над байтами, вычисления будут выполняться с использованием значений int
, причем сначала байты неявно приводятся к (int)
. Это верно и для short
с, и аналогично float
с повышением частоты преобразуется в double
при выполнении арифметики с плавающей точкой.
Второй фрагмент эквивалентен:
byte someVar;
someVar = (int) someVar - 3;
Из-за этого вы должны привести результат обратно к (byte)
, чтобы компилятор принял назначение.
someVar = (byte) (someVar - 3);