Как в Java делать byte b; b++ и b-- правильно?
К сожалению, в Java нет unsigned типов, но можно перед выводом или использованием значения наложить на него битовую маску:public class bytes{
	public static void main(String[] args){
		byte b = (byte) 200;
		System.out.println(b & 0xFF);
		b+=100;
		System.out.println(b & 0xFF);
	}
}
Этот код выведет 200 и 44.>>Пример: 200 + 100 = 44
К слову, это называется не "дополнительным кодом" (доп. код — это представление отрицательных чисел, см. ту же Википедию), а переполнением, т.е., попыткой записать в переменную число большее, чем допустимо типом переменной, в результате чего старшие биты попросту утрачиваются.
Брать тип под задачу. Хоть BigDecimal.