从C++到Java,明显没有答案的问题是为什么Java不包含运算符重载?
是不是Complex a, b, c; a = b + c;比简单得多Complex a, b, c; a = b.add(c);?
是否存在已知的原因,有效的论据,不使运算符重载?这个理由是武断的,还是输给了时间?
我只想知道Java中的一个简单的事情.让我们考虑Java中的以下代码段.
int x=10;
String temp="x = "+x;
System.out.println(temp);
Run Code Online (Sandbox Code Playgroud)
在Java中完全有效并产生输出,x = 10作为字符串.
虽然变量x的类型为int,但它会自动转换为String类型(包装类型).Java如何做到这一点?像C++和C#一样,运算符重载在某种程度上或某处存在于Java中,尽管它已从Java中删除.这里使用哪个特定概念将x转换为字符串.我唯一想知道的事情
还有一个问题,在Java中,布尔数据类型(不是布尔值,包装类)不能转换为任何其他类型(根据我所知).为什么会这样,在某些非常特殊的情况下,将它转换为字符串或其他类型可能会有用.