当前位置: 首页 > 知识库问答 >
问题:

如何将变量与其他无序变量进行比较?

龚彬
2023-03-14

我想用Java做一个程序来比较两个三角形。比较角度的顺序无关紧要,我知道我可以用if语句来做,但有没有其他更有效的方法来比较3个角度和另外3个角度,因为三角形旋转并不重要,因为完全相同?(Java语言)

共有1个答案

游乐池
2023-03-14
  • 将每个三角形的角度放在单独的列表中。
  • 对两个列表进行排序。
  • 检查两个列表是否相等。
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        List<Double> first = new ArrayList<>(List.of(90.0, 30.0, 30.0));
        List<Double> second = new ArrayList(List.of(30.0, 30.0, 90.0));
        Collections.sort(first);
        Collections.sort(second);
        System.out.println(first.equals(second));
    }
}
 类似资料:
  • 有没有更简洁的方法来做到这一点? 编辑:我的问题确实是重复的。对于任何阅读这篇文章的人,我建议再看看其他的线程--它们有一些好的东西。

  • 以下是经典的实践中的一致性: 当线程A写入一个易失性变量,随后线程B读取相同的变量时,A在写入易失性变量之前可见的所有变量的值在读取易失性变量后变得对B可见。 我不确定我真的能理解这句话。例如,在这种情况下,所有变量的含义是什么?这是否意味着使用对使用非volatile变量也有副作用<在我看来,这句话有一些我无法理解的微妙含义<有什么帮助吗?

  • 测试变量的常用方法是检查它是否引用singletone: 根据PEP-8,建议将此方法作为检查的唯一方法: 与None之类的单例进行比较时,应始终使用is或is,永远不要使用相等运算符。 虽然有时我发现以下测试在不同的来源: 这种方式看起来不错,但是我不太明白为什么简单易读的结构可以被所取代。它在某些情况下更有用,还是指代码风格? UPD:使用我发现非常有用(到目前为止):

  • 问题内容: Python如何将多个变量与一个值进行比较?,例如: 我希望返回一个列表: 问题答案: 方法1 方法2 使用元组或列表 方法3 最好是使用set集合

  • 问题内容: 我在Django中使用分页时遇到问题。以下面的URL为例: 在此页面上,我按用户的名字对用户列表进行排序。如果没有排序GET变量,则默认按ID排序。 现在,如果我单击下一个链接,则需要以下URL: 相反,我失去了所有的获取变量并最终得到 这是一个问题,因为第二页是按ID而不是first_name排序的。 如果我使用request.get_full_path,我最终将得到一个丑陋的URL

  • 问题内容: 以下是经典文章Concurency in Practice: 当线程A写入易失性变量,随后线程B读取相同的变量时,在写入易失性变量之前A可见的所有变量的值,在读取易失性变量后B可见。 我不确定我是否真的能理解这一说法。例如,在这种情况下,所有变量的含义是什么?这是否意味着使用volatile还会对非易失性变量的使用产生副作用? 在我看来,该声明具有我无法理解的一些微妙含义。 有什么帮助