java里面的%取摸这么算啊?我搞不懂?是相当于数学里的除吗?比如5%3=2为什么啊?除的话应该等1.6呀

还有java里面的数据类型转换这么换啊?低精度跟高精度这个,
int a=3.4为什么能啊,3.4代表小数,小数默认是double 那么byet<short<int<long<float<double这排序是不是带一个单词代表一个数字啊??
还有一个问题!int a=56
int b=a++ 相当于a+a+1,这里我知道,下面为什么b还是56呢
System out println(b);这里打印出b的值跟打印是a的值,为什么b还是56.
a变57了,
System out println(a);

关于基本数据类型转换,请记住:低到高,系统自动完成;高到低,需要强制转换,这里会造成精度丢失。
例如:
int a;
double b = a;//低到高自动完成
int a = (int)b;//高到低,强转

----------------------------------------
a++的意思是使用后自增1
int a=56;
int b=a++;//这里a++=56,
System out println(b);//故b=56;

system.out.println(a);//使用后自增1,这里a=57;不知道你明白没有.
-------------------------------------------------
5%3=2 的意思是5/3=1余2 %这个是取余,所以是2了,这样明白了吧!
希望我的回答对你有帮助,希望采纳,谢谢!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-02
5除以3余2,那么5%3就是2. 而且int a=3.4是报错的.
int b=a++ 是先赋值a给了b再++追问

取摸这么算啊?我不理解,5%3为什么=2啊。如果5除于3的话应该是1.6啊,不是2啊?
a++我已经懂了

追答

5除以3余2,,不是把他计算出来..你先看看余数的概念,理解了余数就知道取摸了.
http://baike.baidu.com/link?url=w6j3MV--IAazOim9Lhgof5ubfrsdLYDGSSlAGE8l8RM4P1a_2ysIVEFxjXQtTIeKvN1betjhOJo1zXmjBwBGma

第2个回答  2014-03-02
转换只需记住一句话:低转高自动转,高转低要强制。你说的int a=3.4;这样是会报错的除非写成int a=(int)3.4;不懂再问追问

取摸这么算啊?我不理解,5%3为什么=2啊。如果5除于3的话应该是1.6啊,不是2啊?

追答

取摸。。。大哥,换个说法也可以叫取余好吧。。。取余知道不???余就是余数,取得余数

第3个回答  2014-03-02
java中的取模%运算相当于数学中的求余数,不过java中的取余如果除数是整数,被除数是正数负数取模结果都是正数,否则为负数…………追问

我还是不懂求余数这么求?你能举个简单的列子吗?比如刚才5%3

追答

这个是小学数学中的求余数,比如5对3求余的结果是2,6对3求余结果为0,在不同学科可能叫法不一样,操作系统中运算是可能叫做取模符号是mod,在java中你看见例如5%3这样的式子就认为求余就行………………