0

我有很多数据保存在一个文件中。哪一个可以最快地从该文件中多次访问某些关键字?Java 或 C++。与文件操作相比,如果我将这些数据保存在像 Sqlite 这样的数据库中,我会在速度上获得一些优势吗?

4

2 回答 2

3

因为 C++ 是一种低级语言,而 Java 在虚拟机中运行,编写良好的 C++ 代码通常会比编写良好的 Java 代码更快,特别是对于低级操作(包括文件访问)。每当需要在其虚拟机之外执行操作时,Java 都会产生大量开销。

对于大量数据,数据库会比直接文件操作快得多;这正是数据库的设计目的。

于 2013-06-25T19:41:33.007 回答
1

使用 C++,因为它直接编译为本机字节码。虽然一些 JVM 也这样做,但不能保证 Java 总是以这种方式运行。数据库语言会更好,例如您提到的 Sqlite,因为该语言专门针对数据库内容进行了优化。

于 2013-06-25T19:41:50.787 回答