gpt4 book ai didi

java - + 比较(字到比较 : Word) : Integer Java

转载 作者:行者123 更新时间:2023-12-01 11:02:29 25 4
gpt4 key购买 nike

目前我正在开发一个项目,在该项目中我必须使用这个 UML 图来创建附加类,我理解一切,但我对最后一行感到困惑。

compareTo(wordToCompare : Word) : Integer 

由于 Word 是类的名称,我如何插入参数?我尝试输入一个对象作为参数,但它说:

Object is an incompatible type with Word.

我研究了 Word 是否是非原始数据类型,但找不到任何信息。我相当缺乏经验并且很困惑,如果有人可以提供一些帮助,我将不胜感激。

Word class UML
-wordCharacters : String
-count : integer
+ CONSTRUCTOR (word : String)
+ getWord() : String
+ getCount() : Integer
+ incrementCount() : void
+ toString() : String
+ equals(wordtoCompare : Object) : Boolean
+ compareTo(wordtoCompare : Word) : Integer

@Override
public boolean equals(Object wordtoCompare) {
boolean flag = false;
String currentWord = wordtoCompare.getClass().getName();

this.compareTo(wordtoCompare);

return flag;
}

public Integer compareTo(Word wordtoCompare) {

return 0;
}

最佳答案

您正在重写 equals 方法,它应该看起来有点像这样。您需要检查 Object wordtoCompare 的类型是否为 Word 或者它是否是当前对象。检查它是否是 Word 的类型或子类型后,您可以将 wordtoCompare 转换为实际的 Word 对象并用它做你的事情.

@Override
public boolean equals(Object wordtoCompare) {
boolean flag = false;
if(wordtoCompare == this) return true;
if(!(wordtoCompare instanceof Word)) return false;
Word word = (Word)wordtoCompare;

this.compareTo(word);
// Whatever you do with your flag
return flag;
}

关于java - + 比较(字到比较 : Word) : Integer Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33229498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com