بدون مزيد من اللغط ، فقط انظر إلى رمز العينة
Package Cn.Lion.test ؛ فئة عامة PerformanCetest {privatestatic Final int Size = 100000 ؛ اختبار الفئة التجريدية العامة {عملية privatestring ؛ Publictest (سلسلة التشغيل) {this.operation = العملية ؛ } publicabstract void test (قائمة <Tring> list) ؛ publicstring getOperation () {return ؛ }} // فئة مجهولة المصدر التي تنفذ عمليات التكرار aterateTest = اختبار جديد ("iTERATE") {publicvoid test (list <string> list) {for (inti = 0 ؛ i <10 ؛ i ++) {iterator <string> it = list.Iterator () ؛ بينما (it.hasnext ()) {it.next () ؛ }}}}}} ؛ . }}}}}} ؛ . لـ (inti = 0 ؛ i <size ؛ i ++) {it.add ("Lion") ؛ }}}} ؛ . بينما (it.hasnext ()) {it.next () ؛ it.remove () ؛ }}} ؛ staticpublic void testarray (قائمة <string> قائمة) {test [] tests = {iterateTest ، getTest} ؛ الاختبار (الاختبارات ، القائمة) ؛ } staticpublic void testlist (قائمة <string> قائمة) {test [] tests = {insertTest ، iterateTest ، getTest ، removetest} ؛ الاختبار (الاختبارات ، القائمة) ؛ } staticpublic void test (Test [] اختبارات ، قائمة <string> قائمة) {for (inti = 0 ؛ i <tests.length ؛ i ++) {system.out.print (الاختبارات [i] .getOperation ()+"العملية:") ؛ longt1 = system.currentTimeMillis () ؛ الاختبارات [i] .test (قائمة) ؛ longt2 = system.currentTimeMillis () ؛ System.out.print (T2-T1+ "MS") ؛ system.out.println () ؛ }} publicstatic void main (string [] args) {list <string> list = null ؛ // عمليات التكرار والوصول العشوائي لنظام صفيف الاختبار. String [] tstr = سلسلة جديدة [الحجم] ؛ Arrays.fill (tstr ، "Lion") ؛ list = arrays.aslist (tstr) ؛ testarray (قائمة) ؛ TSTR = سلسلة جديدة [الحجم/2] ؛ Collection <string> coll = arrays.aslist (tstr) ؛ // اختبار ناقلات System.out.println ("---------------") ؛ قائمة = ناقل جديد <string> () ؛ list.addall (coll) ؛ قائمة اختبار (قائمة) ؛ // Test LinkedList System.out.println ("--------------") ؛ list = new LinkedList <String> () ؛ list.addall (coll) ؛ قائمة اختبار (قائمة) ؛ // اختبار arraylist system.out.println ("-------------") ؛ list = new ArrayList <Tring> () ؛ list.addall (coll) ؛ قائمة اختبار (قائمة) ؛ }}تظهر نتائج التشغيل في الشكل
من النتائج ، يمكننا أن نرى أن سرعة الوصول العشوائي وتكرار الصفيف هي الأسرع ؛ سرعة إدخال وحذف LinkedList هي الأسرع ؛ سرعة الوصول العشوائي إلى قائمة ArrayList سريعة جدًا ؛ ليس لدى فئة المتجهات أي أداء رائع في جميع الجوانب ، ولم يعد هذا النوع موصى به.
لخص
ما سبق هو كل شيء عن هذا المقال ، آمل أن يكون من المفيد للجميع تعلم أو استخدام Java. إذا كان لديك أي أسئلة ، فيرجى ترك رسالة لمناقشة.