我已经为Tac脚趾创建了一个AI,包含if和else if语句,并简单地检查计算机是否可以做出获胜的移动或阻止玩家获胜。然而,下面的代码,虽然有效,但当计算机发现玩家即将获胜时,它会阻止玩家,并在此同时进行额外的移动,但我不希望它这样做,而是只做1次移动。有人能告诉我我做错了什么吗,谢谢。
// Checks for if the computer can making a winning move
if(buttons[1].getText().equals("O") && buttons[2].getText().equals("O&
我的问题是:为什么a4.equals(a2)导致method1执行而不是method2?a2指向AA,它是参数。a2.equals(b1)也是如此。当它没有指向BB(指向所有equals方法所在的类)时,它只会导致method1执行,并且一个方法得到的参数类型并不重要。
public class AA
{
public int getVal()
{
return 5;
}
}
public class BB extends AA
{
private String _st = "bb";
public boolean eq
请参阅以下代码:
public virtual bool Equals(Entity other)
{
return Equals((Object)other);
}
public override bool Equals(object obj)
{
var compareTo = obj as Entity;
if (ReferenceEquals(compareTo, null))
return false;
if
所以我有这样的设置:
interface A{
}
class B implements A{
public int hashCode() {
...
}
public boolean equals(final Object obj) {
...
}
}
class C implements A{
public int hashCode() {
...
}
public boolean equals(final Object obj) {
...
}
}
class D{
List&l
我有以下课程:
class Point
{
double x, y;
// .... constructor and other functions here
public boolean equals(Point p)
{
if(p==null) return(false);
return(x==p.x && y==p.y);
}
public int hashCode()
{
int result=17;
long c1=Double
我的问题是关于修改java中的表达式以使其具有多态。这个类称为csHash,用于从给定的数据类型DT和给定的键类型KT创建哈希表。现在,在类中的几个方法中(delete、search、insert等)该方法使用一个equals函数,在非多态版本中,该函数只使用String (因为非多态版本中的键是String类型)。我的想法是创建一个equals方法,按照下面的代码编写。我的问题是。它是测试相等性的有效方法吗?
public boolean equals(Object x) {
String i;
i = new String[1];
String y;
我不知道使用对象的静态类型使用基类( object )访问和覆盖子类的方法与使用子类(Point)访问子类之间的区别。
例如:
public class Point {
int x, y;
...
public boolean equals(Object o){
...
}
public boolean equals(Point p){
...
}
}
Object o = new Object();
Point p = new Point(3,4);
Object op = new Point(3,4);
// here the static type is Point and th
这是我的密码:
public class Test {
public static void main(String[] args) {
Object circle1 = new Circle();
Circle circle2 = new Circle();
System.out.println(circle1.equals(circle2)); // returns false
}
}
class Circle {
double radius;
public boolean equals(Circle circle) { // doesn't
在研究另一个问题时:"“,我在Nullable<T>上创建了一个扩展方法,该方法公开了一个通用的Equals<T>(T)方法:
public static class NullableExtensions
{
public static bool Equals<T>(this T? left, T right) where T : struct, IEquatable<T>
{
if (!left.HasValue)
return false;
return rig
我有一个关于重写方法Equals的问题。
public class Asset
{
public string Name { get; set; }
public override bool Equals(object obj)
{
Asset oAss = (Asset)obj;
return Name == oAss.Name;
}
}
public class Mortage : Asset
{
public int Amount { get; set; }
public override bool E
我有一个Java程序,其中包含以下类
public class A{
protected String name;
...
@Override
public boolean equals(Object obj){
if(!(obj instanceof A)){
return false;
}
A a = (A)(obj);
return a.name.equals(this.name);
}
}
public abstract cl
我用Java创建了这个游戏:
import java.util.Scanner;
public class TicTacToe {
public static Scanner input = new Scanner(System.in);
public static String getName(int noPlayer) {
System.out.print("Enter name of Player " + noPlayer + ": ");
return input.next();
}
pub
我对我们重写.equals方法的原因有些困惑。
例如:
Test test1 = new Test(3);
Test test2 = new Test(3);
//The if comparison does the same thing that the overridden `.equals()` method does.
if(test1.equals(test2)){
System.out.println("test1 and test2 are true in .equals()");
}
// Override .equals method.
publi
我有一个(不可变的)对象Group,我正试图在HashSet中使用它。然而,我得到了奇怪的结果:
// Position is another immutable class, GroupType is an enum
Group t1 = new Group(new Position(0, 0), GroupType.ROW);
Group t2 = new Group(new Position(0, 0), GroupType.ROW);
Set<Group> s = new HashSet<Group>();
s.add(t1);
System.out.forma
我制作这个小程序是为了好玩,想看看界面是如何工作的。当我在eatsOrNot函数中输入“iarba”作为狗对象时,我得到了true,而我应该得到false。我在布尔函数中做错了什么?
package animals;
public interface Actions {
void Sound();
boolean eatsOrNot(String s);
void guessNumberOfLegs(int x );
}
package animals;
public class Dog implements Actions {
public boo
我想要创建一个方法,其中输入是一个字符串,它是一个等式,并返回方程的结果。
就像这样
String s;
s = "23*14*(15-4)";
System.out.println(ecuation(s));
我找到了一个java程序,它可以计算一个等式,但我不知道如何使它适应我的需要。有人能帮忙吗?
public class Evaluate {
public static void main(String[] args) {
Stack<String> ops = new Stack<String>();
我有一个程序,我试图让它有一个超类,个人和子类,学生,并试图比较时,他们是相同的基于他们的生日和名字。我得到了正确的结果,但在我试图解决的提示下,我得到了一个错误,其中自动评分器是:“测试一个学生和学生是相同的,即使成绩不同”,预期的结果是真的,但我总是得到假的结果。当比较一个人和一个学生,或者比较一个人和一个人,而不是学生和学生时,这个程序是有效的,我不确定为什么。
主类:
import java.util.Scanner;
public class PersonTester {
public static void main(String[] args) {
Sc
我刚刚开始学习Java,并遇到了equals。在寻找了equals和==之间的区别后,我决定自己练习它,但我没有得到预期的结果。代码如下:
public class Sandbox {
/**
* @param args
*
*/
private int a;
public void setAtta(int value){a=value;}
public int getAtta(){return a;}
public static void main(String[] args) {
// TODO Auto-generated method stub
Sandbox
在下面的代码中,为什么o1.equals(o2);调用equals(Object o)而不是equals(EqualsTest et),即使o1和o2引用的是EqualsTest类型的对象!
public class EqualsTest {
public static <T> boolean equalTest(T o1, T o2) {
return o1.equals(o2);
}
public static void main(String[] args) {
EqualsTest et1 = ne
我试图通过MVC中的LINQ从multi join返回一条记录,我使用了我的personnel数据库中的一个模型,它有一个名为personnel的主表,一些字段只是一个id,并且依赖于其他表。因此,我需要一种连接这些表的方法来检索所有数据,通过id参数对它们进行过滤,并将LINQ结果放入视图模型并将其返回给视图。这是我的,我使用了下面的代码,但它不能工作。
public ActionResult Details(int id)
{
var q = from personnel in db.Personels
join Genders in
我试图写一个程序来计算我的GPA,当我试图运行原型时,我一直收到这样的消息:
java.lang.NoSuchMethodError: main
Exception in thread "main"
代码如下:
包装橙色;
import java.util.Scanner;
public class plums{
String philosophy, econ, french, fye, marine, stats;
public void main(String args[]){
Scanner gpa = new Scanner(Syste
首先,我想对您的帮助表示感谢。我对Java编程比较陌生。我构建了一个简单的TicTacToe游戏,但我遇到了一点小麻烦。
每隔一段时间,"X“或"O”就会连续播放两次。我有一个布尔变量,它应该在每个玩家轮流时从true切换到false,将"X“更改为"O”,但由于某种原因,它不会在随机时间切换。
我在想这可能是Eclipse的问题,因为我不明白为什么它会这样做。
下面是游戏的代码:
public class gameMain {
Boolean player = true;
JPanel gameBoard;
JButton[] b =