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

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

25
วนซ้ำผ่านคอลเลกชันหลีกเลี่ยง ConcurrentModificationException เมื่อลบวัตถุในลูป
เราทุกคนรู้ว่าคุณไม่สามารถทำสิ่งต่อไปนี้ได้เนื่องจากConcurrentModificationException: for (Object i : l) { if (condition(i)) { l.remove(i); } } แต่บางครั้งก็ใช้งานได้ แต่ก็ไม่เสมอไป นี่คือรหัสเฉพาะบางส่วน: public static void main(String[] args) { Collection<Integer> l = new ArrayList<>(); for (int i = 0; i < 10; ++i) { l.add(4); l.add(5); l.add(6); } for (int i : l) { if (i == …

29
จะเพิ่มไฟล์ jar ในเครื่องให้กับโครงการ Maven ได้อย่างไร
ฉันจะเพิ่มไฟล์ jar ในตัวเครื่อง (ยังไม่ได้เป็นส่วนหนึ่งของที่เก็บ Maven) ได้โดยตรงในแหล่งห้องสมุดของโครงการของฉันได้อย่างไร

28
เรียงลำดับ ArrayList ของวัตถุที่กำหนดเองตามคุณสมบัติ
ฉันอ่านเกี่ยวกับการเรียงลำดับ ArrayLists โดยใช้ Comparator แต่ในตัวอย่างทั้งหมดที่ผู้คนใช้compareToซึ่งอ้างอิงจากการวิจัยบางอย่างเป็นวิธีสำหรับสตริง ฉันต้องการเรียงลำดับ ArrayList ของวัตถุที่กำหนดเองโดยหนึ่งในคุณสมบัติของพวกเขา: วัตถุวันที่ ( getStartDay()) โดยปกติแล้วฉันจะเปรียบเทียบพวกเขาด้วยitem1.getStartDate().before(item2.getStartDate())ดังนั้นฉันจึงสงสัยว่าฉันจะเขียนสิ่งที่ชอบได้ไหม: public class CustomComparator { public boolean compare(Object object1, Object object2) { return object1.getStartDate().before(object2.getStartDate()); } } public class RandomName { ... Collections.sort(Database.arrayList, new CustomComparator); ... }
1145 java  sorting  date  comparator 

8
servlets ทำงานอย่างไร การเริ่มต้นเซสชันตัวแปรที่แชร์และมัลติเธรด
สมมติว่าฉันมีเว็บเซิร์ฟเวอร์ที่เก็บ servlets ไว้มากมาย สำหรับการส่งข้อมูลระหว่าง servlets เหล่านั้นฉันกำลังตั้งค่าเซสชันและตัวแปรอินสแตนซ์ ตอนนี้ถ้าผู้ใช้ 2 คนหรือมากกว่าส่งคำขอไปยังเซิร์ฟเวอร์นี้จะเกิดอะไรขึ้นกับตัวแปรเซสชัน พวกเขาจะเป็นเรื่องธรรมดาสำหรับผู้ใช้ทุกคนหรือพวกเขาจะแตกต่างกันสำหรับผู้ใช้แต่ละคน? หากพวกเขาแตกต่างกันเซิร์ฟเวอร์จะสามารถแยกความแตกต่างระหว่างผู้ใช้ที่แตกต่างกันอย่างไร คำถามที่คล้ายกันอีกข้อหนึ่งหากมีnผู้ใช้ที่เข้าถึงเซิร์ฟเล็ตเฉพาะเจาะจงเซิร์ฟเล็ตนี้จะถูกสร้างอินสแตนซ์เฉพาะในครั้งแรกที่ผู้ใช้คนแรกเข้าถึงหรือได้รับอินสแตนซ์สำหรับผู้ใช้ทั้งหมดแยกกันหรือไม่ กล่าวอีกนัยหนึ่งจะเกิดอะไรขึ้นกับตัวแปรอินสแตนซ์

30
ฉันจะเริ่มต้นแผนที่แบบคงที่ได้อย่างไร
คุณจะเริ่มต้นคงที่Mapใน Java อย่างไร วิธีที่หนึ่ง: แบบเริ่มต้นคงที่ วิธีที่สอง: ตัวเริ่มต้นอินสแตนซ์ (คลาสย่อยแบบไม่ระบุชื่อ) หรือวิธีอื่น ๆ ? ข้อดีและข้อเสียของแต่ละข้อคืออะไร นี่คือตัวอย่างที่แสดงวิธีการสองวิธี: import java.util.HashMap; import java.util.Map; public class Test { private static final Map<Integer, String> myMap = new HashMap<>(); static { myMap.put(1, "one"); myMap.put(2, "two"); } private static final Map<Integer, String> myMap2 = new HashMap<>(){ { put(1, "one"); put(2, …

12
วิธีเริ่มต้น HashMap โดยตรง (ตามตัวอักษร) ได้อย่างไร
มีวิธีการเริ่มต้น Java HashMap เช่นนี้ไหม: Map<String,String> test = new HashMap<String, String>{"test":"test","test":"test"}; สิ่งที่จะเป็นไวยากรณ์ที่ถูกต้อง? ฉันไม่พบอะไรเกี่ยวกับเรื่องนี้ เป็นไปได้ไหม ฉันกำลังมองหาวิธีที่สั้นที่สุด / เร็วที่สุดในการใส่ค่า "สุดท้าย / คงที่" ในแผนที่ที่ไม่เคยเปลี่ยนแปลงและเป็นที่รู้จักล่วงหน้าเมื่อสร้างแผนที่

30
วิธีการสร้างอาร์เรย์ทั่วไปใน Java?
เนื่องจากการใช้งานจาวา generics คุณไม่สามารถมีรหัสเช่นนี้: public class GenSet<E> { private E a[]; public GenSet() { a = new E[INITIAL_ARRAY_LENGTH]; // error: generic array creation } } ฉันจะใช้สิ่งนี้ในขณะที่รักษาความปลอดภัยประเภทได้อย่างไร ฉันเห็นวิธีแก้ไขปัญหาในฟอรัม Java ที่เป็นเช่นนี้: import java.lang.reflect.Array; class Stack<T> { public Stack(Class<T> clazz, int capacity) { array = (T[])Array.newInstance(clazz, capacity); } private final T[] array; } แต่ฉันไม่เข้าใจว่าเกิดอะไรขึ้น

13
อะไรคือค่าที่เป็นไปได้ของการกำหนดค่า hbm2ddl.auto Hibernate และพวกเขาทำอะไร
ฉันต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับการอัปเดตการส่งออกและค่าที่สามารถมอบให้hibernate.hbm2ddl.auto ฉันต้องรู้เมื่อต้องใช้การอัปเดตและเมื่อใด และทางเลือกคืออะไร? นี่คือการเปลี่ยนแปลงที่อาจเกิดขึ้นบนฐานข้อมูล: ตารางใหม่ คอลัมน์ใหม่ในตารางเก่า ลบคอลัมน์แล้ว เปลี่ยนชนิดข้อมูลของคอลัมน์แล้ว ประเภทของคอลัมน์เปลี่ยนคุณลักษณะของมัน ตารางลดลง ค่าของคอลัมน์มีการเปลี่ยนแปลง ในแต่ละกรณีทางออกที่ดีที่สุดคืออะไร
1085 java  hibernate  hbm2ddl 

30
วิธีแยก JSON ใน Java
ฉันมีข้อความ JSON ต่อไปนี้ ฉันจะแยกให้ได้รับค่าของpageName, pagePic, post_idฯลฯ ? { "pageInfo": { "pageName": "abc", "pagePic": "http://example.com/content.jpg" }, "posts": [ { "post_id": "123456789012_123456789012", "actor_id": "1234567890", "picOfPersonWhoPosted": "http://example.com/photo.jpg", "nameOfPersonWhoPosted": "Jane Doe", "message": "Sounds cool. Can't wait to see it!", "likesCount": "2", "comments": [], "timeOfPost": "1234567890" } ] }
1048 java  json  parsing 

15
ดาวน์โหลดไฟล์ด้วย Android และแสดงความคืบหน้าใน ProgressDialog
ฉันพยายามเขียนแอพพลิเคชั่นเรียบง่ายที่ได้รับการอัพเดต สำหรับสิ่งนี้ฉันต้องการฟังก์ชั่นง่าย ๆ ที่สามารถดาวน์โหลดไฟล์และแสดงความคืบหน้าในปัจจุบันProgressDialogได้ ฉันรู้วิธีการทำProgressDialogแต่ฉันไม่แน่ใจว่าจะแสดงความคืบหน้าในปัจจุบันและวิธีการดาวน์โหลดไฟล์ได้ตั้งแต่แรก

21
วิธีรับไดเรกทอรีการทำงานปัจจุบันใน Java
ฉันต้องการเข้าถึงไดเรกทอรีการทำงานปัจจุบันของฉันโดยใช้ java รหัสของฉัน: String current = new java.io.File( "." ).getCanonicalPath(); System.out.println("Current dir:"+current); String currentDir = System.getProperty("user.dir"); System.out.println("Current dir using System:" +currentDir); เอาท์พุท: Current dir: C:\WINDOWS\system32 Current dir using System: C:\WINDOWS\system32 เอาต์พุตของฉันไม่ถูกต้องเนื่องจากไดรฟ์ C ไม่ใช่ไดเรกทอรีปัจจุบันของฉัน วิธีรับไดเรกทอรีปัจจุบัน
1028 java  java-io 

19
การแปลงอาร์เรย์เป็นลิสต์ใน Java
ฉันจะแปลงอาร์เรย์เป็นรายการใน Java ได้อย่างไร ฉันใช้Arrays.asList()แต่พฤติกรรม (และลายเซ็น) เปลี่ยนจาก Java SE 1.4.2 (เอกสารตอนนี้ในที่เก็บถาวร) เป็น8และตัวอย่างข้อมูลส่วนใหญ่ที่ฉันพบบนเว็บใช้พฤติกรรม 1.4.2 ตัวอย่างเช่น: int[] spam = new int[] { 1, 2, 3 }; Arrays.asList(spam) on 1.4.2 จะส่งคืนรายการที่มีองค์ประกอบ 1, 2, 3 on 1.5.0+ ส่งคืนรายการที่มีอาร์เรย์สแปม ในหลายกรณีมันควรจะตรวจจับได้ง่าย แต่บางครั้งมันอาจไม่มีใครสังเกตเห็น: Assert.assertTrue(Arrays.asList(spam).indexOf(4) == -1);


15
ฉันจะปัดจำนวนเต็มด้วยศูนย์ทางซ้ายได้อย่างไร
คุณจะปล่อย pad intด้วยค่าศูนย์เมื่อแปลงเป็น a Stringใน java ได้อย่างไร? โดยทั่วไปแล้วฉันต้องการหาจำนวนเต็มจนถึง9999ศูนย์นำหน้า (เช่น 1 = 0001)
1022 java  formatting  zero-pad 

25
การรวมไหทั้งหมดในไดเร็กทอรีภายใน Java classpath
มีวิธีรวมไฟล์ jar ทั้งหมดในไดเร็กทอรีใน classpath หรือไม่? ฉันพยายามjava -classpath lib/*.jar:. my.package.Programแล้วและไม่สามารถหาไฟล์คลาสที่อยู่ในไหเหล่านั้นได้ ฉันต้องเพิ่มไฟล์ jar แต่ละไฟล์ใน classpath แยกกันหรือไม่?

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