คำถามติดแท็ก collections

API การรวบรวมให้นักพัฒนามีชุดของคลาสและอินเทอร์เฟซที่ทำให้ง่ายต่อการจัดการคอลเลกชันของวัตถุ

6
การส่งคืน 'IList' เทียบกับ 'ICollection' เทียบกับ 'Collection'
ฉันสับสนเกี่ยวกับประเภทคอลเลกชันที่ฉันควรส่งคืนจากเมธอดและคุณสมบัติ API สาธารณะของฉัน คอลเลกชันที่ฉันมีในใจIList, และICollectionCollection การส่งคืนประเภทใดประเภทหนึ่งเหล่านี้เป็นที่ต้องการมากกว่าประเภทอื่น ๆ เสมอหรือขึ้นอยู่กับสถานการณ์เฉพาะหรือไม่
120 c#  .net  generics  collections 

10
ความแตกต่างระหว่าง Java Enumeration และ Iterator
อะไรคือความแตกต่างที่แน่นอนระหว่างสองอินเทอร์เฟซนี้? ไม่Enumerationมีประโยชน์มากกว่าการใช้Iterator? หากใครสามารถอธิบายได้อย่างละเอียดบทความอ้างอิงจะได้รับการชื่นชม



11
การเรียงลำดับ ArrayList ของวัตถุโดยใช้ลำดับการเรียงลำดับที่กำหนดเอง
ฉันต้องการใช้คุณลักษณะการจัดเรียงสำหรับแอปพลิเคชันสมุดที่อยู่ของฉัน ฉันต้องการจัดเรียงArrayList<Contact> contactArrayไฟล์. Contactเป็นชั้นเรียนที่มีสี่ช่อง ได้แก่ ชื่อหมายเลขบ้านหมายเลขโทรศัพท์มือถือและที่อยู่ nameฉันต้องการที่จะเรียงลำดับใน ฉันจะเขียนฟังก์ชันการจัดเรียงแบบกำหนดเองเพื่อทำสิ่งนี้ได้อย่างไร

13
ความแตกต่างระหว่าง Arrays.asList (อาร์เรย์) และ ArrayList ใหม่ <Integer> (Arrays.asList (array))
อะไรคือความแตกต่างระหว่าง 1.List&lt;Integer&gt; list1 = new ArrayList&lt;Integer&gt;(Arrays.asList(ia)); //copy 2.List&lt;Integer&gt; list2 = Arrays.asList(ia); ที่iaเป็นอาร์เรย์ของจำนวนเต็ม ฉันทราบมาว่าการดำเนินการบางอย่างไม่ได้รับอนุญาตในlist2. ทำไมถึงเป็นเช่นนั้น? เก็บไว้ในหน่วยความจำอย่างไร (อ้างอิง / คัดลอก)? เมื่อฉันสับเปลี่ยนรายการlist1ไม่ส่งผลกระทบต่ออาร์เรย์เดิม แต่list2ทำ แต่ก็ยังlist2ค่อนข้างสับสน การArrayListอัปเดตรายการแตกต่างจากการสร้างใหม่อย่างไรArrayList list1 differs from (1) ArrayList&lt;Integer&gt; list1 = new ArrayList&lt;Integer&gt;(Arrays.asList(ia));
119 java  list  collections 

7
วิธีที่ดีที่สุดในการสร้างแผนที่ว่างใน Java
ฉันต้องการสร้างแผนที่ว่างเปล่า if (fileParameters == null) fileParameters = (HashMap&lt;String, String&gt;) Collections.EMPTY_MAP; ปัญหาคือโค้ดด้านบนสร้างคำเตือนนี้: Type safety: Unchecked cast from Map to HashMap วิธีที่ดีที่สุดในการสร้างแผนที่ว่างนี้คืออะไร?


8
การแปลง List <int> เป็นสตริงที่คั่นด้วยลูกน้ำ
มีวิธีรับ List และแปลงเป็นสตริงที่คั่นด้วยลูกน้ำหรือไม่? ฉันรู้ว่าฉันสามารถวนซ้ำและสร้างมันได้ แต่ฉันคิดว่าพวกคุณบางคนมีวิธีที่เจ๋งกว่านี้ไหม? ฉันต้องการเรียนรู้ 'เทคนิค' ประเภทนี้จริงๆดังนั้นโปรดอธิบายหรือเชื่อมโยงไปยังเอกสารเกี่ยวกับวิธีการที่คุณใช้
116 c#  collections 


6
คอลเลกชัน Java ไม่เปลี่ยนรูป
จากเอกสารJava 1.6 Collection Framework : คอลเลกชันที่ไม่สนับสนุนการดำเนินการปรับเปลี่ยนใด ๆ (เช่นadd, removeและclear) จะเรียกว่าunmodifiable [ ... ] คอลเลกชันที่ยังรับประกันว่าการเปลี่ยนแปลงในวัตถุเก็บไม่เคยจะมองเห็นได้จะเรียกว่าไม่เปลี่ยนรูป เกณฑ์ที่สองทำให้ฉันสับสนเล็กน้อย เนื่องจากคอลเล็กชันแรกไม่สามารถแก้ไขได้และสมมติว่าการอ้างอิงคอลเลกชันดั้งเดิมถูกกำจัดออกไปการเปลี่ยนแปลงที่อ้างถึงในบรรทัดที่สองคืออะไร? มันหมายถึงการเปลี่ยนแปลงขององค์ประกอบที่อยู่ในคอลเลกชันเช่นสถานะขององค์ประกอบหรือไม่? คำถามที่สอง: เพื่อให้คอลเลกชันไม่เปลี่ยนรูปจะต้องดำเนินการอย่างไรในการจัดหาผู้รับประกันเพิ่มเติมที่ระบุไว้ หากสถานะขององค์ประกอบในคอลเล็กชันถูกอัพเดตโดยเธรดจะเพียงพอสำหรับความไม่เปลี่ยนรูปหรือไม่ที่การอัปเดตเหล่านั้นในสถานะจะไม่ปรากฏบนเธรดที่มีคอลเล็กชันที่ไม่เปลี่ยนรูป เพื่อให้คอลเลกชันไม่เปลี่ยนรูปจะมีวิธีการอย่างไรในการให้การค้ำประกันเพิ่มเติมที่ระบุไว้?

9
การทำซ้ำคอลเลกชัน Java ใน Scala
ฉันกำลังเขียนโค้ด Scala ซึ่งใช้Apache POI API ฉันต้องการทำซ้ำในแถวที่อยู่ในjava.util.Iteratorที่ได้รับจากคลาสชีต ฉันต้องการใช้ตัววนซ้ำในfor eachรูปแบบลูปดังนั้นฉันจึงพยายามแปลงเป็นคอลเลกชัน Scala ดั้งเดิม แต่จะไม่มีโชค ฉันได้ดูคลาส / ลักษณะของ Scala wrapper แล้ว แต่ไม่เห็นวิธีใช้อย่างถูกต้อง ฉันจะทำซ้ำคอลเลกชัน Java ใน Scala โดยไม่ใช้while(hasNext()) getNext()รูปแบบการวนซ้ำแบบละเอียดได้อย่างไร นี่คือรหัสที่ฉันเขียนตามคำตอบที่ถูกต้อง: class IteratorWrapper[A](iter:java.util.Iterator[A]) { def foreach(f: A =&gt; Unit): Unit = { while(iter.hasNext){ f(iter.next) } } } object SpreadsheetParser extends Application { implicit def iteratorToWrapper[T](iter:java.util.Iterator[T]):IteratorWrapper[T] = …

12
Android-java- วิธีจัดเรียงรายการของวัตถุตามค่าที่แน่นอนภายในวัตถุ
ฉันกำลังพยายามจัดเรียงรายการอาร์เรย์ของวัตถุตามค่าเฉพาะภายในวัตถุ อะไรคือแนวทางที่ดีที่สุดในการทำสิ่งนั้น ฉันควรใช้ Collections.sort () กับตัวเปรียบเทียบบางประเภทหรือไม่ ฉันพยายามจัดเรียงรายการของวัตถุตามค่าลอยที่พวกมันเก็บไว้ในตัวแปรตัวใดตัวหนึ่ง แก้ไข: นี่คือสิ่งที่ฉันมีจนถึงตอนนี้: public class CustomComparator implements Comparator&lt;Marker&gt; { @Override public int compare(Mark o1, Mark o2) { return o1.getDistance().compareTo(o2.getDistance()); } } สถานะข้อผิดพลาด: ไม่สามารถเรียกใช้ CompareTo (double) ในประเภทดั้งเดิม double เป็นเพราะตัวเปรียบเทียบไม่สามารถส่งคืนสิ่งอื่นนอกเหนือจากบางประเภทได้หรือไม่?

10
นิพจน์แลมบ์ดาเพื่อแปลงอาร์เรย์ / รายการสตริงเป็นอาร์เรย์ / รายการจำนวนเต็ม
เนื่องจาก Java 8 มาพร้อมกับนิพจน์แลมด้าอันทรงพลัง ฉันต้องการเขียนฟังก์ชันเพื่อแปลง List / array ของ Strings เป็น array / List of Integers, Floats, Doubles ฯลฯ .. ใน Java ปกติมันจะง่ายพอ ๆ กับ for(String str : strList){ intList.add(Integer.valueOf(str)); } แต่ฉันจะบรรลุสิ่งเดียวกันกับแลมด้าได้อย่างไรโดยกำหนดอาร์เรย์ของสตริงที่จะแปลงเป็นอาร์เรย์ของจำนวนเต็ม


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.