Без лишних слов, просто посмотрите на пример кода
пакет cn.lion.test; public class PerformanceStest {PrivateStatic Final Int Size = 100000; Publicstatic Abstract Class Test {Privatestring Operation; Publictest (String Operation) {this.Operation = Operation; } publicabstract void -тест (список <string> list); publicstring getoPeration () {return; }} // анонимный класс, который выполняет статиметрованную операционную деятельность iteratictest = new Test ("iteater") {publicvoid test (list <string> list) {for (inti = 0; i <10; i ++) {iterator <string> it = list.iterator (); while (it.hasnext ()) {it.next (); }}}}}}; // Выполнить случайный доступ к анонимному классу getTest = new Test ("get") {publicvoid test (список <string> list) {for (inti = 0; i <list.size (); i ++) {for (intk = 0; k <10; k ++) {list.get (k); }}}}}}; // Выполнить insertTest insertTest = new Test ("insert") {publicvoid test (list <string> list) {listiceTerator <string> it = list.listiterator (list.size ()/2); for (inti = 0; i <size; i ++) {it.add ("Lion"); }}}}; // Выполнить удаленное анонимное класс Statictest Removetest = new Test ("remove") {publicvoid test (list <string> list) {listicerator <string> it = list.listiterator (); while (it.hasnext ()) {it.next (); it.remove (); }}}; staticpublic void testarray (list <string> list) {test [] tests = {iteratetest, getTest}; тест (тесты, список); } staticpublic void -list (list <string> list) {test [] tests = {inserttest, iteratetest, getTest, Removetest}; тест (тесты, список); } staticPublic void -тест (тест [] tests, list <string> list) {for (inti = 0; i <tests.length; i ++) {System.out.print (tests [i] .getoperation ()+"Операция:"); longt1 = System.currentTimeMillis (); тесты [i] .test (list); longt2 = System.currentTimeMillis (); System.out.print (T2-T1+ "MS"); System.out.println (); }} publicstatic void main (string [] args) {list <string> list = null; // Операции итерации и случайного доступа в тестовых массивах System.out.println ("-------------"); String [] tstr = new String [size]; Arrays.fill (TSTR, "Lion"); list = arrays.aslist (tstr); Testarray (список); tstr = new String [size/2]; Collection <string> coll = arrays.aslist (tstr); // тестовая векторная система.out.println ("---------------"); list = new Vector <string> (); list.addall (coll); список испытаний (список); // тест LinkedList System.out.println ("--------------"); list = new LinkedList <string> (); list.addall (coll); список испытаний (список); // тест arraylist System.out.println ("-------------"); list = new ArrayList <string> (); list.addall (coll); список испытаний (список); }}Результаты работы показаны на рисунке
Из результатов мы видим, что скорость случайного доступа и итерация массива является самой быстрой; Скорость вставки и удаления LinkedList является самой быстрой; Скорость случайного доступа к ArrayList также очень быстрая; Векторный класс не имеет выдающейся производительности во всех аспектах, и этот тип больше не рекомендуется.
Суммировать
Выше приведено все об этой статье, я надеюсь, что для всех будет полезно изучать или использовать Java. Если у вас есть какие -либо вопросы, пожалуйста, оставьте сообщение для обсуждения.