Мне это интересно.
Я хотел проверить, какая функция была быстрее, поэтому я создаю небольшой код, и я выполнял много раз.
public static void main(String[] args) {
long ts;
String c = "sgfrt34tdfg34";
ts = System.currentTimeMillis();
for (int k = 0; k < 10000000; k++) {
c.getBytes();
}
System.out.println("t1->" + (System.currentTimeMillis() - ts));
ts = System.currentTimeMillis();
for (int i = 0; i < 10000000; i++) {
Bytes.toBytes(c);
}
System.out.println("t2->" + (System.currentTimeMillis() - ts));
}
"Второй" цикл работает быстрее, поэтому я думал, что класс Bytes из hadoop был быстрее, чем функция класса String. Затем я изменил порядок циклов, а затем c.getBytes() стал быстрее. Я выполнял много раз, и мой вывод состоял в том, что я не знаю почему, но что-то происходит в моей виртуальной машине после первого запуска кода, чтобы результаты стали быстрее для второго цикла.