为什么byte类型之间的值不能相加?
byte   i=1; 
 byte   j=2; 
 byte   k=i+j; 
 运行这样的程序会失败,为什么?而int相加就可以
------解决方案--------------------以下赋值语句将产生一个编译错误,原因是赋值运算符右侧的算术表达式在默认情况下的计算结果为 int 类型。     
 // Error: conversion from int to byte: 
 byte z = x + y;   
 try.. 
 若要解决此问题,请使用强制转换:   
 // OK: explicit conversion: 
 byte z = (byte)(x + y);   
------解决方案--------------------那就要问C#了,long之间的+肯定是被运算符重载了,byte之间没有。
------解决方案--------------------TO:那如果是long+long呢,为什么表达式的计算结果默认不是int?   
 long +long 的计算结果默认为long..   
 至于为什么byte+byte=int,还真得去问微软了..   
 除byte之外,还有short+short表达式的计算结果默认也是int..   
 知道就行了,没有必要死抠..   
 个人意见,仅供参考..