相关疑难解决方法(0)

使用Java中的"<"或">"运算符比较两个对象

如何使用"<"或">"将Java中的两个对象进行比较,例如

MyObject<String> obj1= new MyObject<String>(“blablabla”, 25);
MyObject<String> obj2= new MyObject<String>(“nannaanana”, 17);
if (obj1 > obj2) 
    do something. 
Run Code Online (Sandbox Code Playgroud)

我把MyObject类标题设为

public class MyObject<T extends Comparable<T>> implements Comparable<MyObject<T>> 并且创建了方法Comp但是我获得的所有增益现在我可以在对象列表上使用"sort",但是如何直接比较两个对象?是

if(obj1.compareTo(obj2) > 0)
     do something
Run Code Online (Sandbox Code Playgroud)

唯一的办法?

java operator-overloading object comparable

14
推荐指数
1
解决办法
2万
查看次数

Java类的"+"运算符

我有一个这样的课:

private static class Num {
    private int val;

    public Num(int val) {
        this.val = val;
    }
}
Run Code Online (Sandbox Code Playgroud)

是否可以使用"+" - 运算符添加到类的对象?

Num a = new Num(18);
Num b = new Num(26);
Num c = a + b;
Run Code Online (Sandbox Code Playgroud)

java numbers class operator-overloading

13
推荐指数
3
解决办法
7784
查看次数

运算符在Java中重载

根据我在java中的知识,我知道,Java语言中没有运算符重载.那么,为什么这段代码会两次打印'true'?

    String s1 = "abc";
    String s2 = "abc";
    System.out.println(s1==s2);

    Integer i1 = 1;
    Integer i2 = 1;
    System.out.println(i1==i2);
Run Code Online (Sandbox Code Playgroud)

java

11
推荐指数
3
解决办法
9561
查看次数

如何在Java类中实现操作符

我试图创建一个无符号整数类.

public class UnsignedInteger extends Number implements Comparable<UnsignedInteger> 
    { 
    ... 
    }
Run Code Online (Sandbox Code Playgroud)

有没有办法实现运营商,如; +, - ,*,/,<<,>>,|,^,>>>,<<

java operators

8
推荐指数
2
解决办法
3万
查看次数

Java不能超载任何运算符.为什么?

可能重复:
Java运算符重载

在c ++中,我们可以执行运算符重载.但Java也是一种面向对象的语言.那么为什么java不支持重载?

java operator-overloading

6
推荐指数
2
解决办法
5004
查看次数

==运算符对String有什么用?

在Java中,如果要检查两个字符串是否相等,在它们的值相同的意义上,他/她需要使用该equals方法.例如:

String foo = "foo"; 
String bar = "bar";
if(foo.equals(bar)) { /* do stuff */ }
Run Code Online (Sandbox Code Playgroud)

如果想要检查参考相等性,他需要在两个字符串上使用==运算符.

if( foo == bar ) { /* do stuff */ }
Run Code Online (Sandbox Code Playgroud)

所以我的问题是==运算符是否用于String类?为什么要比较字符串引用?

编辑:问:如何比较字符串?==如何工作?该equals方法如何工作?

我要问的是==运算符对Java中的String类有什么用处?不重载它的理由是什么,以便进行深入的比较?

java string

6
推荐指数
2
解决办法
1312
查看次数

在Java中使用运算符和对象

假设我们有一个课程如下:

public class Time{
 int hour;
 int min;
 Time(int hour,int m){
  hour=h;
  min=m;
 }
 public String toString(){
 return hour+":"+min;
 }
}
Run Code Online (Sandbox Code Playgroud)

我想写一些像这样的代码,主要是结果,如评论中所示:

Time t1 = new Time(13,45);
Time t2= new Time(12,05);
System.out.println(t1>=t2); // true
System.out.println(t1<t2);  // false
System.out.println(t1+4);   // 17:45
System.out.println(t1-t2);  // 1:40
System.out.println(t1+t2);  // 1:50 (actually 25:50)
System.out.println(t2++);   // 13:05
Run Code Online (Sandbox Code Playgroud)

我可以通过接口等来做到这一点,或者我唯一能做的就是编写方法而不是使用运算符?

提前致谢.

java object operators

6
推荐指数
1
解决办法
110
查看次数

运算符重载

从语言设计的角度来看,什么类型的实践支持运算符重载?

有什么利弊(如果有的话)?

c++ java programming-languages language-design

4
推荐指数
3
解决办法
1281
查看次数

比较字符串就好像它们是数字一样

我想知道是否有可能比较字符串就好像它们是数字一样.例如,你有什么方法可以做到这一点"Cat" > "Dog"

java string operators string-comparison

4
推荐指数
1
解决办法
3057
查看次数

Java8是否支持运算符重载

所以我感兴趣的是有没有办法在Java 8中重载运算符?是否存在类似的东西

void operator(){ }
Run Code Online (Sandbox Code Playgroud)

C++

java java-8

4
推荐指数
1
解决办法
2515
查看次数