java - Java 中的矩阵和 vector 数组

标签 java arrays rendering raytracing

我必须为某些类(class)(用 Java)实现一个渲染引擎(基于光线追踪)。已经提供了一些类(class)(但我可以自由地改变我想要的一切)。有一些矩阵/vector 类型的类,它们都为每个元素使用单独的变量。对于 4x4 类型的矩阵,它看起来很丑,而且在我看来是反面向对象的。我会使用二维数组。但 Java 会自动进行绑定(bind)检查。如果我使用数组而不是单独的变量,这会严重影响性能吗? (我知道性能和Java并不总是匹配,但它必须在Java中。)或者可以关闭这个安全功能吗?

最佳答案

Java 确实会自动检查数组边界。这很好,并且不会对性能产生任何影响。

I know that performance and Java do not always match, but It has to be in Java.

这既是事实又不是事实。 Java 确实被编译为字节码,然后被解释。然而,java 有很多可以优化代码的功能,包括即时编译,因此在某些测试中,java 的运行速度比 native 代码更快。

最后一点:阅读 Premature optimization is the root of all evil

关于java - Java 中的矩阵和 vector 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19481054/

相关文章:

php - 从二维数组中删除键的最简单方法?

c - C 程序中的文本文件到位图

javascript - Extjs间歇性错误

performance - OpenGL:快速离屏渲染

java - 在 JFileChooser 中调整 JList 文件元素的大小

java - 使用 Spring Security 'hasPermission()' 在未经授权的 REST 服务请求上返回 JSON

java - 用户定义的 ArrayIndexOutOfBoundsException 异常

javascript - 从 JavaScript 访问 Spring 模型变量

java - 无法使用 get(index) 显示对象数组

Node.js Express 渲染多个后续 View