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

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

3
การต่อสตริงถูกนำไปใช้ใน Java 9 อย่างไร?
ตามที่เขียนไว้ในJEP 280: Indify String Concatenation : เปลี่ยนStringลำดับไบต์โค้ด -concatenation แบบคงที่ที่สร้างขึ้นโดยjavacใช้การinvokedynamicเรียกไปยังฟังก์ชันไลบรารี JDK สิ่งนี้จะเปิดใช้งานการเพิ่มประสิทธิภาพของการStringเรียงต่อกันในอนาคตโดยไม่ต้องมีการเปลี่ยนแปลงเพิ่มเติมกับ bytecode ที่ปล่อยjavacออกมา ที่นี่ฉันต้องการทำความเข้าใจว่าการใช้การinvokedynamicโทรคืออะไรและการเชื่อมต่อ bytecode แตกต่างจากinvokedynamicอย่างไร

5
Java RegEx ไม่คำนึงถึงขนาดตัวพิมพ์หรือไม่
ใน Java เมื่อทำการแทนที่ทั้งหมดเพื่อค้นหารูปแบบ regex เช่น: replaceAll("\\?i\\b(\\w+)\\b(\\s+\\1)+\\b", "$1"); (หากต้องการลบคำที่ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่ที่ซ้ำกันเช่น Test test) ฉันไม่แน่ใจว่าฉันใส่ไฟล์?i. ฉันอ่านว่ามันควรจะอยู่ที่จุดเริ่มต้น แต่ถ้าฉันเอาออกฉันก็จะจับคำที่ซ้ำกันติดต่อกัน (เช่น test test) แต่ไม่ใช่คำที่ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่ (เช่น Test test) ฉันเลยคิดว่าจะเพิ่ม? i ในตอนแรก แต่ดูเหมือนจะไม่ได้งานทำ ความคิดใด ๆ ? ขอบคุณ!

9
Hash String ผ่าน SHA-256 ใน Java
โดยมองไปรอบ ๆ ที่นี่เช่นเดียวกับอินเทอร์เน็ตโดยทั่วไปฉันได้พบปราสาท Bouncy ฉันต้องการใช้ Bouncy Castle (หรือยูทิลิตี้อื่น ๆ ที่มีให้ใช้ฟรี) เพื่อสร้าง SHA-256 Hash of a String ใน Java ดูเอกสารของพวกเขาแล้วฉันไม่พบตัวอย่างที่ดีในสิ่งที่ฉันต้องการทำ ใครสามารถช่วยฉันได้ไหม
111 java  bouncycastle  sha256  jce 

7
Intellij IDEA. ซ่อนไฟล์. iml
ฉันใช้ Intellij IDEA 12 และต้องการซ่อน.imlไฟล์ในมุมมองโครงการ ฉันจะบรรลุเป้าหมายนี้ได้อย่างไร?

8
มี Mutex ใน Java หรือไม่?
มีวัตถุ Mutex ใน java หรือวิธีสร้างหรือไม่? ฉันกำลังถามเนื่องจากวัตถุ Semaphore ที่เริ่มต้นด้วยใบอนุญาต 1 ใบไม่ได้ช่วยฉัน ลองนึกถึงกรณีนี้: try { semaphore.acquire(); //do stuff semaphore.release(); } catch (Exception e) { semaphore.release(); } หากมีข้อยกเว้นเกิดขึ้นเมื่อได้รับครั้งแรกการเปิดตัวในบล็อกจับจะเพิ่มการอนุญาตและสัญญาณไม่ได้เป็นสัญญาณไบนารีอีกต่อไป วิธีที่ถูกต้องจะเป็นอย่างไร try { semaphore.acquire(); //do stuff } catch (Exception e) { //exception stuff } finally { semaphore.release(); } รหัสข้างต้นจะทำให้มั่นใจได้ว่าสัญญาณจะเป็นไบนารีหรือไม่?

8
สามารถใช้ == บน enums ใน Java ได้หรือไม่?
ใช้==กับ enums ใน Java ได้หรือไม่หรือต้องใช้.equals()? ในการทดสอบของฉันใช้==งานได้เสมอ แต่ฉันไม่แน่ใจว่ารับประกันได้หรือไม่ โดยเฉพาะอย่างยิ่งไม่มี.clone()วิธีการใน enum ดังนั้นฉันจึงไม่รู้ว่าเป็นไปได้หรือไม่ที่จะได้ enum ที่.equals()จะส่งคืนค่าที่แตกต่างจาก==. ตัวอย่างเช่นนี้ใช้ได้หรือไม่: public int round(RoundingMode roundingMode) { if(roundingMode == RoundingMode.HALF_UP) { //do something } else if (roundingMode == RoundingMode.HALF_EVEN) { //do something } //etc } หรือฉันต้องเขียนด้วยวิธีนี้: public int round(RoundingMode roundingMode) { if(roundingMode.equals(RoundingMode.HALF_UP)) { //do something } else if (roundingMode.equals(RoundingMode.HALF_EVEN)) …
111 java  syntax  enums 

11
java: ArrayList - ฉันจะตรวจสอบได้อย่างไรว่ามีดัชนีอยู่หรือไม่?
ฉันใช้ArrayList<String>และเพิ่มข้อมูลในดัชนีเฉพาะฉันจะตรวจสอบได้อย่างไรว่ามีดัชนีเฉพาะอยู่หรือไม่ ฉันควรget()ตรวจสอบค่าหรือไม่? หรือควรรอให้มีการยกเว้น? มีวิธีอื่นอีกไหม อัปเดต ขอบคุณสำหรับคำตอบ แต่เนื่องจากฉันกำลังเพิ่มข้อมูลที่ดัชนีเฉพาะความยาวของรายการจึงไม่แสดงให้ฉันเห็น
111 java  arraylist 

7
Java8 Lambdas เทียบกับคลาส Anonymous
เนื่องจาก Java8 ได้รับการเผยแพร่เมื่อไม่นานมานี้และนิพจน์แลมบ์ดาใหม่เอี่ยมนั้นดูดีมากฉันสงสัยว่านี่หมายถึงการตายของคลาส Anonymous ที่เราคุ้นเคยหรือไม่ ฉันได้ค้นคว้าข้อมูลเล็กน้อยเกี่ยวกับเรื่องนี้และพบตัวอย่างที่น่าสนใจเกี่ยวกับวิธีที่นิพจน์แลมบ์ดาจะแทนที่คลาสเหล่านั้นอย่างเป็นระบบเช่นวิธีการจัดเรียงของคอลเลคชันซึ่งเคยได้รับอินสแตนซ์ของตัวเปรียบเทียบแบบไม่ระบุชื่อเพื่อทำการจัดเรียง: Collections.sort(personList, new Comparator<Person>(){ public int compare(Person p1, Person p2){ return p1.firstName.compareTo(p2.firstName); } }); ตอนนี้สามารถทำได้โดยใช้ Lambdas: Collections.sort(personList, (Person p1, Person p2) -> p1.firstName.compareTo(p2.firstName)); และดูกระชับอย่างน่าประหลาด. คำถามของฉันคือมีเหตุผลอะไรที่จะใช้คลาสเหล่านั้นใน Java8 แทน Lambdas ต่อไปหรือไม่? แก้ไข คำถามเดียวกัน แต่ในทางตรงกันข้ามประโยชน์ของการใช้ Lambdas แทนคลาส Anonymous คืออะไรเนื่องจาก Lambdas สามารถใช้ได้กับอินเทอร์เฟซวิธีการเดียวเท่านั้นคุณลักษณะใหม่นี้เป็นเพียงทางลัดที่ใช้ในบางกรณีเท่านั้นหรือมีประโยชน์จริงหรือไม่

7
เหตุใดจึงไม่กำหนดขนาดดั้งเดิมของบูลีนของ Java
ข้อมูลจำเพาะ Java เครื่องเสมือนบอกว่ามีการสนับสนุนที่ จำกัด สำหรับบูลดั้งเดิมประเภท ไม่มีคำแนะนำของเครื่องเสมือน Java เฉพาะสำหรับการดำเนินการกับค่าบูลีนเท่านั้น แต่นิพจน์ในภาษาโปรแกรม Java ที่ทำงานกับค่าบูลีนจะถูกคอมไพล์เพื่อใช้ค่าของชนิดข้อมูล Java virtual machine int ข้างต้นบอกเป็นนัยว่า (แม้ว่าฉันอาจตีความผิด) ว่าประเภทข้อมูล int ถูกใช้เมื่อทำงานกับบูลีน แต่นี่เป็นการสร้างหน่วยความจำ 32 บิต เนื่องจากบูลีนแสดงถึงข้อมูล 1 บิตเท่านั้น: เหตุใดจึงไม่ใช้ไบต์หรือชนิดสั้นเป็นพร็อกซีสำหรับบูลีนแทนที่จะเป็น int สำหรับ JVM ใด ๆ วิธีใดที่น่าเชื่อถือที่สุดในการค้นหาว่าหน่วยความจำที่ใช้จัดเก็บประเภทบูลีนคือเท่าใด
111 java  boolean 

6
Thread.sleep ของ Java จะโยน InterruptedException เมื่อใด
Thread.sleep ของ Java จะโยน InterruptedException เมื่อใด ปลอดภัยที่จะเพิกเฉยหรือไม่? ฉันไม่ได้ทำมัลติเธรดใด ๆ ฉันต้องการรอสักครู่ก่อนที่จะลองดำเนินการอีกครั้ง

13
JFrame ใน Java แบบเต็มหน้าจอ
ฉันจะทำโครงการเร็ว ๆ นี้และฉันจะต้องใช้ โหมดเต็มหน้าจอในนั้น มันจะวาดภาพกราฟิกบางส่วนในหน้าต่าง มันจะสะดวกสบายถ้าฉันใช้JFrameหรือสิ่งที่คล้ายกัน ฉันไม่รู้ว่าความละเอียดสุดท้ายของหน้าจอจะเป็นอย่างไร โปรดบอกฉันว่ากราฟิกจะถูกปรับขนาดโดยอัตโนมัติหรือไม่? JFrame jf = new JFrame(); jf.setSize(1650,1080); //make it fullscreen; //now is everything is going to be rescaled so it looks like the original?
111 java  swing  fullscreen 

9
% Like% Query ในฤดูใบไม้ผลิ JpaRepository
ฉันต้องการเขียนข้อความค้นหาที่คล้ายกันJpaRepositoryแต่ไม่ได้ส่งคืนอะไรเลย: LIKE '%place%'- ไม่ทำงาน LIKE 'place' ทำงานได้อย่างสมบูรณ์ นี่คือรหัสของฉัน: @Repository("registerUserRepository") public interface RegisterUserRepository extendsJpaRepository<Registration,Long> { @Query("Select c from Registration c where c.place like :place") List<Registration> findByPlaceContaining(@Param("place")String place); }

11
การเปรียบเทียบสตริงความคล้ายคลึงใน Java
ฉันต้องการเปรียบเทียบสตริงหลาย ๆ สายและค้นหาสตริงที่คล้ายกันมากที่สุด ฉันสงสัยว่ามีไลบรารีวิธีการหรือแนวทางปฏิบัติที่ดีที่สุดที่จะส่งคืนฉันว่าสตริงใดคล้ายคลึงกับสตริงอื่นมากกว่า ตัวอย่างเช่น: "สุนัขจิ้งจอกกระโดดเร็ว" -> "สุนัขจิ้งจอกกระโดด" "จิ้งจอกด่วนกระโดด" -> "สุนัขจิ้งจอก" การเปรียบเทียบนี้จะแสดงให้เห็นว่าครั้งแรกคล้ายกันมากกว่าครั้งที่สอง ฉันเดาว่าฉันต้องการวิธีการบางอย่างเช่น: double similarityIndex(String s1, String s2) มีสิ่งนี้อยู่ที่ไหนสักแห่ง? แก้ไข: ทำไมฉันถึงทำสิ่งนี้ ฉันกำลังเขียนสคริปต์ที่เปรียบเทียบผลลัพธ์ของไฟล์ MS Project กับผลลัพธ์ของระบบเดิมที่จัดการกับงาน เนื่องจากระบบเดิมมีความกว้างของฟิลด์ที่ จำกัด มากเมื่อเพิ่มค่าคำอธิบายจะถูกย่อ ฉันต้องการวิธีกึ่งอัตโนมัติเพื่อค้นหารายการจาก MS Project ที่คล้ายกับรายการในระบบเพื่อที่ฉันจะได้รับคีย์ที่สร้างขึ้น มีข้อเสียเนื่องจากยังต้องตรวจสอบด้วยตนเอง แต่จะช่วยประหยัดงานได้มาก


4
การเปรียบเทียบค่า Long แบบบรรจุกล่อง 127 และ 128
ฉันต้องการเปรียบเทียบค่าLong object สองค่าโดยใช้ifเงื่อนไข เมื่อค่าเหล่านี้มีน้อยกว่า 128ในifสภาพที่ใช้งานได้อย่างถูกต้อง แต่เมื่อพวกเขามีค่ามากกว่าหรือเท่ากับ 128เปรียบเทียบล้มเหลว ตัวอย่าง: Long num1 = 127; Long num2 = 127; if (num1 == num2) { // Works ok } การเปรียบเทียบโค้ดด้านบนทำงานได้อย่างถูกต้อง แต่ล้มเหลวในโค้ดด้านล่าง: Long num1 = 128; Long num2 = 128; if (num1 == num2) { // Does NOT work } ทำไมถึงมีปัญหาในการเปรียบเทียบยาวตัวแปรที่มีค่าสูงกว่า 127 ? หากชนิดข้อมูลตัวแปรถูกเปลี่ยนเป็นแบบดั้งเดิมแบบยาวการเปรียบเทียบจะใช้ได้กับทุกกรณี

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