|
|
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsev, тогда уж так Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Leonid KudryavtsevValentin Kolesnikov, substring.... жесть какаяоно того стоит время выполнения 106 567 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 17:45 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
Друзья. Родные. Драгоценные. Осадите коней. Вы сейчас один за другим продуцируете фейерический поток сознания и еще дальше уводите в дебри бедного Андронова. Для того чтобы доказать что в Java один метод (практически а не алгоритмически) быстрее другого вы должны. - подготовить среду тестирования. Как минимум сделать warm-up. Миллион способов как это сделать. Но только не 1 раз вызвать метод main(). - подготовить репрезентативный набор 1000 - 10000 и более строк. И разных. И тех которые будут похожи на настоящие. И учесть wors-cases (в одном поле - целая другая строка CSV) Да и не смотрите в профилировщик. Стандартный вам не поможет. Он просто не покажет вам rootcause вашего тормоза. А еще лучше сделать шаг назад и подумать а зачем делать разбивку строки? Может надо делать сразу целый файл? Stream? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 18:24 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
mayton, я могу только повторить что уже сказал, что оптимизатор может и не подключиться в рантайме. да такой метод сравнения очень относительный но я запускал не один раз и видел что время скачет, я выбрал примерно часто встречающееся разница в 100, и 10 раз позволяет с большой вероятностью судить о скорости. я не думаю что настоящие тесты покажут обратное соотношение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 18:36 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
Я бы как нибудь так сделал. По скорости (на 10 повторах), примерно одинаково вариантом на substr'ах. Но по логике, потреблять памяти должно меньше. От copy-past форматирование (отступы) немного уехали (((. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 19:04 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
вадяно тут разница приличная"Меня опять терзают смутные сомнения", что "приличную разницу" даёт компиляция регулярного выражения ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 20:22 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov"Меня опять терзают смутные сомнения", что "приличную разницу" даёт компиляция регулярного выражения ... вроде она вынесена за интервал измерения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 20:32 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
вадявроде она вынесена за интервал измеренияДело даже не в этом ... Test.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. Код: plaintext 1. 2. Разница, примерно, трёхкратная, а совсем не два порядка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 21:27 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
Ну и для сравнения: Test.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 22:52 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, скорее всего разница не только в этом . я формирую массив, а ты лист. для правомерности сравнения надо сдела приведение и так и так. первоначально я стремился ускорить не только сплитом. заменю массив на лист для чистоты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 22:54 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
Ну, дык, чтобы было сравнимо, я и собрал массив в список. подальше положишь - поближе возьмёшь Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 23:08 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
А вообще: нужен велосипед - загляни в Apache Commons CSV ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 23:16 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
Типа такого. Только у меня вертикальная палочка - делиметер. А в топике - будет запятая. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 23:31 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. авторx3: 360 SUBSTRING: 955 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 23:47 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. SUBSTRING: 524 x3: 865 equals = тормоз ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2018, 07:30 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
поправка Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2018, 07:53 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
авторx3: 271 SUBSTRING NO EQUALS: 154 Ты выиграл) Поизаимствовав мои идеи)) Я думал доп переменные будут быстрее проверок которые есть в charAt(), ан нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2018, 08:35 |
|
||
|
Разбивка на слова
|
|||
|---|---|---|---|
|
#18+
no56892авторx3: 271 SUBSTRING NO EQUALS: 154 Ты выиграл) Поизаимствовав мои идеи)) Я думал доп переменные будут быстрее проверок которые есть в charAt(), ан нет. меня смутило твоё использование substring 2 раза при уаеличении скорости.,... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2018, 08:54 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39655921&tid=2122011]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
184ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 15ms |
| total: | 287ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...