gpt4 book ai didi

java - Java 和 JUnit 的三角形实现类型?

转载 作者:行者123 更新时间:2023-11-30 06:19:37 24 4
gpt4 key购买 nike

我做了TypeofTriangle.java

public class TypeofTriangle {

public static int triangle(int a, int b, int c) {
if (a<b && b<c && (a*a)+(b*b)>(c*c)) {
System.out.println("Triangular Taper");
} else if(a<b && b<c && (a*a)+(b*b)=(c*c)) {
System.out.println("Right Triangle");
} else if (a<b && b<c && (a*a)+(b*b)<(c*c)) {
System.out.println("Blunt Triangle");}
}
}

我为类测试制作了 TypeofTriangleTest.java

import junit.framework.*;

public class TypeofTriangleTest extends TestCase {
public TypeofTriangleTest(String name) {
super(name);
}

public void testSimple() {
assertEquals("Triangular Taper", TypeofTriangle.triangle(6,8,10));
}
}

但是当我运行类测试时,出现一个错误。它说

java:6: operator && cannot be applied to boolean,int
} else if(a<b && b<c && (a*a)+(b*b)=(c*c)) {

那我该怎么办?嗯,我对 TypeofTriangle.java 中的 return 语句感到困惑,因为我想返回 System.out.println 的结果,如何让它工作?

最佳答案

您可以通过如下修改来更正它:

else if(a<b && b<c && ((a*a)+(b*b)==(c*c)))

要返回一些东西,我会将类型更改为字符串:

public class TypeofTriangle {

public static String triangle(int a, int b, int c) {
if (a<b && b<c && (a*a)+(b*b)>(c*c)) {
return "Triangular Taper";
} else if(a<b && b<c && ((a*a)+(b*b)==(c*c))) {
return "Right Triangle";
} else if (a<b && b<c && (a*a)+(b*b)<(c*c)) {
return "Blunt Triangle";
} return "Not a triangle";
}
}

关于java - Java 和 JUnit 的三角形实现类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22896023/

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