Sem mais delongas, basta olhar para o código de amostra
pacote cn.lion.test; public class PerformAncEtest {privaticatic final int tamanho = 100000; Publicstatic Abstract Class Test {Operação Privatestring; Publictest (operação da string) {this.operation = Operação; } Publicabstract void test (list <string> list); publicsTring getOperation () {return; }} // Classe anônima que executa operações de iteração STATICTETEST ITERATETEST = NOVO TEST ("ITERATE") {PublicVoid Test (List <String> list) {for (inti = 0; i <10; i ++) {iterator <string> it = list.iterator (); while (it.hasnext ()) {it.next (); }}}}}}; // Executa o acesso aleatório da classe anônima statictestest getTest = new test ("get") {publicvoid test (list <string> list) {for (inti = 0; i <list.size (); i ++) {for (intk = 0; k <10; k ++) {list.get (k); }}}}}}; // execute inserttest insertTest = new test ("insert") {publicvoid test (list <string> list) {listiterator <string> it = list.ListIterator (list.size ()/2); for (inti = 0; i <tamanho; i ++) {it.add ("leão"); }}}}; // Execute a classe anônima excluída statictestest removetest = new test ("remover") {publicvoid test (list <string> list) {listiterator <string> it = list.ListIterator (); while (it.hasnext ()) {it.next (); it.remove (); }}}; staticpublic void testArray (list <string> list) {test [] tests = {iterateTest, getTest}; teste (testes, lista); } staticpublic void testlist (list <string> list) {test [] tests = {inserttest, iterateTest, getTest, removetest}; teste (testes, lista); } StaticPublic void Test (teste [] testes, list <string> list) {for (inti = 0; i <tests.length; i ++) {System.out.print (tests [i] .GETOPERATION ()+"Operação:"); longt1 = system.currenttimemillis (); testes [i] .test (list); longt2 = system.currenttimemillis (); System.out.print (T2-T1+ "MS"); System.out.println (); }} publicstatic void main (string [] args) {list <string> list = null; // operações de iteração e acesso aleatório do sistema de matriz de teste.out.println ("-------------"); String [] tstr = new String [size]; Arrays.fill (tstr, "leão"); list = Arrays.asList (TSTR); testArray (lista); tstr = nova string [size/2]; Coleção <string> cols = Arrays.asList (TSTR); // teste de vetor system.out.println ("---------------"); list = novo vetor <string> (); list.addall (coll); lista de teste (lista); // test linkedlist System.out.println ("--------------"); list = new LinkedList <String> (); list.addall (coll); lista de teste (lista); // teste ArrayList System.out.println ("-------------"); list = new ArrayList <String> (); list.addall (coll); lista de teste (lista); }}Os resultados da operação são mostrados na figura
A partir dos resultados, podemos ver que a velocidade do acesso aleatório e a iteração da matriz é a mais rápida; A velocidade de inserção e exclusão do LinkedList é a mais rápida; A velocidade do acesso aleatório à lista de Array também é muito rápida; A classe vetorial não tem desempenho excelente em todos os aspectos, e esse tipo não é mais recomendado.
Resumir
O exposto acima é tudo sobre este artigo, espero que seja útil que todos aprendam ou usem o Java. Se você tiver alguma dúvida, deixe uma mensagem para discutir.