java:
package test_java;
import java.util.HashMap;
import java.util.Scanner;
public class Main {
class Table {
Long x2;
Long x3;
String str;
public Table(Long i) {
x2 = i*2;
x3 = i*3;
str = x3.toString();
}
}
private HashMap<Long, Table> hash = new HashMap<Long, Table>();
public Main() {
}
private void log(String s) {
System.out.println(s);
}
public void test() {
for (long i = 0; i < 1000L*1000L; i++) {
hash.put(i, new Table(i));
}
log("Generated");
Scanner scan = new Scanner(System.in);
scan.nextInt();
}
public static void main(String[] args) {
Main m = new Main();
m.test();
}
}
Nodejs:
h = {}
for (i=0; i < 1000*1000; i++) h[i] = {x2:i*2, x3:i*3, str : (i*3)+""}
Ъ: 267мб - ява, 127 нода (было ~180 сразу после запуска)
И что получается? Ява сосуна по памяти больше чем в 2 раза? (и во много раз по коду, лол) Как дальше жить? Что я не так сделал?
$ java -version
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
$ node --version
v10.14.2