Tag: 运算符重载

是否有可能在Java中重载运算符?

我有以下类,它描述了XY表面上的一个点: class Point{ double x; double y; public Point(int x, int y){ this.x = x; this.y = y; } } 所以我想overlad +和-运算符有可能写代码运行: Point p1 = new Point(1, 2); Point p2 = new Point(3, 4); Point resAdd = p1 + p2; // answer (4, 6) Point resSub = p1 – p2; // answer (-2, -2) 我怎么能用Java做呢? […]

用add运算符理解java字符串

我试图了解编译器如何查看以下print语句。 这很简单但有点吸引人。 这将打印添加的值。 足够令人信服。 的System.out.println(1 + 2); //输出:3 以下输出看起来也很有说服力: System.out.println(1 + 2 +“3”); //输出:33 我的问题(基于上述行为)就在这里。 System.out.println(“1”+ 2 + 3); //应该是15对吗? 没有。 这是123。 我尝试了其他一些类似的陈述。 我能够看到两个明确的行为。 如果整数位于前面而没有引号,则会添加它们,并且后续整数仅作为后缀添加到前面添加的值中。 如果语句以字符串开头,则在引号下,则所有其他后续元素将作为后缀附加。 这是java api文档中的某个地方吗? 或者只是非常明显的字符串或添加操作员行为,我没有看到。 任何您宝贵的见解将不胜感激。 这是代码片段: public static void main(String[] args) { System.out.println(1+2); System.out.println(1+2+”3″); System.out.println(“1″+2+3); System.out.println(“1″+2+”3”); System.out.println(“1″+2); } // The Console output: // 3 // 33 // 123 // 123 […]

Java中的字符串+运算符

几分钟前我看到了这个问题 ,并决定查看java String类来检查+运算符是否有一些重载。 我找不到任何东西,但我知道我能做到这一点 String ab = “ab”; String cd = “cd”; String both = ab + cd; //both = “abcd” 实施的地方在哪里?

为什么+在Java中使用Strings?

Java不能执行运算符重载,但+对于String和Integer以及其他一些类都可以正常工作。 这怎么可能? 更新: 为什么这样做? Integer i = 4; Integer p = 5; System.out.println(i*p); // prints 20

Java类的“+”运算符

我有一个这样的课: private static class Num { private int val; public Num(int val) { this.val = val; } } 是否可以使用“+” – 运算符添加到类的对象? Num a = new Num(18); Num b = new Num(26); Num c = a + b;

为什么Java不需要运算符重载?

为什么Java不需要运算符重载? 有没有什么方法可以在Java中支持它?