![]() |
Что быстрее работает Switch или If операторы
Что быстрее работает Switch или If операторы?Тестировал кто нибудь? поделитесь опытом
|
Свич быстрее, хоть и не значительно. Но писать его сложнее, в смысле набора текста, и выглядит эта конструкци, на мой взгляд, уродливее.
Плюс если условия не большие и их не много, особой разницы нет. |
Собственно, тесты:
1. Тест на сравнение '==', результат: Код:
Test started, 100000000 iterattions!Код:
Test started, 100000000 iterattions!Код AS3:
Switch подходит для сравнения конкретных результатов, вкладывая в него '<' мы фактически создаем ещё одно под условие, отсюда такой плохой результат. Писать его не сложно и он очень удобен для перебора заранее известных результатов. Получаются ясные и красивые конструкций. Добавлено через 25 минут Особенно стоит отметить возможность указания последовательных меток в switch: Код AS3:
|
Делать тесты в дебаг плеере безсмысленно.
|
Заморачиваться насчет скорости выполнения конструкций "switch" и "if" бессмысленно.
|
Цитата:
|
В некоторых случаях можно вообще обойтись хеш-таблицей.
|
У меня switch тоже показывает худшие результаты по сравнению с if. Однако, разница не может быть почти в 6 раз, как у вас. У меня в этом же коде switch отстает от if на 25%, но не 600%, этого просто не может быть.
И тем не менее я уверен, что выбор в пользу switch или if не должен диктоваться производительностью. |
|
странно, всегда думал, что в ас3 это должно быть как в других языках
http://stackoverflow.com/questions/7...an-switch-case хотя возможно так и есть, просто все вышеприведенные тесты не достоверны. Надо протестировать на большом количестве условий |
| Часовой пояс GMT +4, время: 18:48. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.