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

Java เป็นภาษาการเขียนโปรแกรมระดับสูงที่เป็นที่นิยม ใช้แท็กนี้เมื่อคุณมีปัญหาในการใช้หรือทำความเข้าใจภาษานั้น ๆ แท็กนี้ไม่ค่อยได้ใช้คนเดียวและมักใช้ร่วมกับ [สปริง], [สปริงบูต], [jakarta-ee], [android], [javafx], [gradle] และ [maven]

9
ฉันควรส่งคืนคอลเล็กชันหรือสตรีมหรือไม่
สมมติว่าฉันมีวิธีที่ส่งกลับมุมมองแบบอ่านอย่างเดียวในรายการสมาชิก: class Team { private List < Player > players = new ArrayList < > (); // ... public List < Player > getPlayers() { return Collections.unmodifiableList(players); } } นอกจากนี้สมมติว่าลูกค้าทั้งหมดทำซ้ำในรายการทันที อาจจะนำผู้เล่นเข้าสู่ JList หรืออะไรบางอย่าง ลูกค้าไม่ได้จัดเก็บการอ้างอิงไปยังรายการสำหรับการตรวจสอบในภายหลัง! ในสถานการณ์ทั่วไปนี้ฉันควรส่งคืนสตรีมแทนหรือไม่ public Stream < Player > getPlayers() { return players.stream(); } หรือส่งคืนสตรีมที่ไม่มีลักษณะเฉพาะใน Java หรือไม่ สตรีมที่ออกแบบมาให้ "ยุติ" …


4
ดึงฟิลด์คงที่เท่านั้นที่ประกาศในคลาส Java
ฉันมีชั้นเรียนต่อไปนี้: public class Test { public static int a = 0; public int b = 1; } เป็นไปได้หรือไม่ที่จะใช้การสะท้อนเพื่อรับรายการของฟิลด์คงที่เท่านั้น? Test.class.getDeclaredFields()ฉันรู้ฉันจะได้รับอาร์เรย์ของฟิลด์ทั้งหมดที่มี แต่ดูเหมือนว่าไม่มีวิธีการตรวจสอบว่าFieldอินสแตนซ์เป็นตัวแทนของสนามคงที่หรือไม่
163 java  reflection  static  field 

9
Java: วิธีรับอินพุตจาก System.console ()
ฉันพยายามที่จะใช้คลาสคอนโซลที่จะได้รับข้อมูลจากผู้ใช้ แต่วัตถุ null System.console()ถูกส่งกลับเมื่อผมเรียก ฉันต้องเปลี่ยนอะไรก่อนที่จะใช้ System.console? Console co=System.console(); System.out.println(co); try{ String s=co.readLine(); }
162 java 

25
ฉันจะแทนที่สองสายในวิธีที่ไม่จบลงแทนที่สายอื่นได้อย่างไร
สมมติว่าฉันมีรหัสต่อไปนี้: String word1 = "bar"; String word2 = "foo"; String story = "Once upon a time, there was a foo and a bar." story = story.replace("foo", word1); story = story.replace("bar", word2); หลังจากรันโค้ดนี้แล้วค่าstoryจะเป็น"Once upon a time, there was a foo and a foo." ปัญหาที่คล้ายกันเกิดขึ้นหากฉันแทนที่พวกเขาในลำดับตรงกันข้าม: String word1 = "bar"; String word2 = …
162 java  string  replace 


5
วิธีรับอาร์กิวเมนต์ VM จากภายในแอปพลิเคชัน Java
ฉันต้องตรวจสอบว่ามีตัวเลือกบางอย่างที่สามารถส่งผ่านไปยัง JVM ได้อย่างชัดเจนหรือมีค่าเริ่มต้น จะเจาะจงมากขึ้น: ฉันต้องสร้างหนึ่งเธรดที่มีขนาดสแต็คดั้งเดิมสูงกว่าค่าเริ่มต้น แต่ในกรณีที่ผู้ใช้ต้องการดูแลสิ่งต่าง ๆ ด้วยตัวเองโดยระบุ-Xssตัวเลือกที่ฉันต้องการสร้างเธรดทั้งหมดที่มีขนาดสแต็คเริ่มต้น (ซึ่งจะถูกระบุโดยผู้ใช้ในตัวเลือก -Xss) ฉันได้ตรวจสอบคลาสที่ชอบjava.lang.Systemและjava.lang.Runtimeแต่สิ่งเหล่านี้ไม่ได้ให้ข้อมูลที่เป็นประโยชน์เกี่ยวกับอาร์กิวเมนต์ VM มีวิธีใดบ้างที่จะรับข้อมูลที่ฉันต้องการ
162 java  jvm  jvm-arguments 

11
listview อะแด็ปเตอร์ listview แบบกำหนดเองถูกเรียกหลายครั้งและไม่เรียงลำดับกัน
ฉันมีอะแดปเตอร์รายการที่กำหนดเอง: class ResultsListAdapter extends ArrayAdapter<RecordItem> { ในเมธอด 'getView' ที่แทนที่ฉันจะพิมพ์เพื่อตรวจสอบตำแหน่งที่อยู่และไม่ว่าจะเป็น convertView หรือไม่: @Override public View getView(int position, View convertView, ViewGroup parent) { System.out.println("getView " + position + " " + convertView); ผลลัพธ์ของสิ่งนี้ (เมื่อรายการถูกแสดงครั้งแรกไม่มีการป้อนข้อมูลของผู้ใช้เป็นยัง) 04-11 16:24:05.860: INFO/System.out(681): getView 0 null 04-11 16:24:29.020: INFO/System.out(681): getView 1 android.widget.RelativeLayout@43d415d8 04-11 16:25:48.070: INFO/System.out(681): getView 2 android.widget.RelativeLayout@43d415d8 …
162 java  android  listview 

10
การเรียก IllegalMonitorStateException เมื่อรอ ()
ฉันใช้มัลติเธรดใน java สำหรับโปรแกรมของฉัน ฉันได้ทำงานด้ายประสบความสำเร็จ แต่เมื่อฉันใช้มันมีการขว้างปาThread.wait() java.lang.IllegalMonitorStateExceptionฉันจะทำให้เธรดรอจนกว่าจะได้รับการแจ้งเตือนได้อย่างไร

4
MOJO ใน Maven คืออะไร
ฉันกำลังอ่านเกี่ยวกับ Maven ตอนนี้และทุกที่ในข้อความที่ฉันเห็นคำนี้ (โมโจ) ฉันประมาณเข้าใจว่ามันหมายถึงอะไร แต่ฉันจะไม่ปฏิเสธคำอธิบายที่ดี ฉันพยายาม google แต่พบคำอธิบายที่ไม่ใช่มนุษย์เท่านั้น POJO - ตกลง แต่ MOJO? วัตถุ Java Maven เก่า?

7
มีการรับประกันคำสั่งซื้อสำหรับการส่งคืนคีย์และค่าจากวัตถุ LinkedHashMap หรือไม่?
ฉันรู้ว่าLinkedHashMapมีคำสั่งวนซ้ำที่คาดการณ์ได้ (คำสั่งแทรก) การSetคืนสินค้าโดยLinkedHashMap.keySet()และการCollectionส่งคืนสินค้าLinkedHashMap.values()ยังรักษาคำสั่งซื้อนี้หรือไม่

17
ทำไมไม่มีใครใช้ make for Java?
เกือบทุกโปรเจ็กต์ Java ที่ฉันเคยเห็นใช้ Maven หรือ Ant พวกเขาเป็นเครื่องมือที่ดีและฉันคิดว่าโครงการใด ๆ สามารถใช้งานได้ แต่สิ่งที่เคยเกิดขึ้นกับให้ ? มันใช้สำหรับโครงการที่ไม่ใช่ Java ที่หลากหลายและสามารถจัดการกับ Java ได้อย่างง่ายดาย แน่นอนว่าคุณต้องดาวน์โหลด make.exe หากคุณใช้ Windows แต่ Ant และ Maven ยังไม่ได้มาพร้อมกับ JDK มีข้อบกพร่องพื้นฐานกับ make เมื่อใช้กับ Java หรือไม่ มันเป็นเพราะ Ant และ Maven เขียนด้วยภาษาจาวาใช่ไหม
162 java  ant  makefile  maven 

4
Java EE คืออะไร
ฉันทำ Java SE มาหลายปีแล้วและย้ายไปที่ Java EE อย่างไรก็ตามฉันมีปัญหาในการทำความเข้าใจกับบางแง่มุมของ Java EE Java EE เป็นเพียงข้อกำหนดหรือไม่? สิ่งที่ฉันหมายถึงคือ: EJB Java EE หรือไม่ EJB / Spring มีการใช้งานที่แตกต่างกันของ Java EE หรือไม่? ฉันขอโทษที่ถาม แต่ฉันมีปัญหาบางอย่างที่จะเข้าใจว่า Java EE คืออะไร ใครช่วยอธิบาย Java EE ได้บ้าง และ EJB?
162 java  jakarta-ee  ejb 

14
เลือกค่าแบบสุ่มจาก enum หรือไม่
หากฉันมี Enum เช่นนี้: public enum Letter { A, B, C, //... } วิธีที่ดีที่สุดในการเลือกแบบสุ่มคืออะไร ไม่จำเป็นต้องเป็นกระสุนคุณภาพการผลิต แต่การกระจายที่ค่อนข้างดีก็ดี ฉันสามารถทำอะไรเช่นนี้ private Letter randomLetter() { int pick = new Random().nextInt(Letter.values().length); return Letter.values()[pick]; } แต่จะมีวิธีที่ดีกว่า ฉันรู้สึกว่านี่เป็นสิ่งที่ถูกแก้ไขก่อนหน้านี้
162 java  random  enums 

9
จะโคลน InputStream ได้อย่างไร
ฉันมี InputStream ที่ฉันผ่านไปยังวิธีการที่จะทำการประมวลผลบางอย่าง ฉันจะใช้ InputStream เดียวกันในวิธีอื่น แต่หลังจากการประมวลผลครั้งแรก InputStream จะปรากฏขึ้นภายในเมธอด ฉันจะโคลน InputStream เพื่อส่งไปยังวิธีที่ปิดเขาได้อย่างไร มีวิธีแก้ไขปัญหาอื่นหรือไม่? แก้ไข: วิธีการที่ปิด InputStream เป็นวิธีการภายนอกจาก lib ฉันไม่สามารถควบคุมการปิดได้หรือไม่ private String getContent(HttpURLConnection con) { InputStream content = null; String charset = ""; try { content = con.getInputStream(); CloseShieldInputStream csContent = new CloseShieldInputStream(content); charset = getCharset(csContent); return IOUtils.toString(content,charset); } catch (Exception …
162 java  clone  inputstream 

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