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

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

7
อินเทอร์เฟซสืบทอดจากคลาส Object ใน java
อินเตอร์เฟสได้รับมรดกจากObjectคลาสใน Java หรือไม่? ถ้าไม่เช่นนั้นเราจะสามารถเรียกใช้เมธอดคลาสอ็อบเจ็กต์บนอินสแตนซ์ของอินเตอร์เฟสได้อย่างไร public class Test { public static void main(String[] args) { Employee e = null; e.equals(null); } } interface Employee { }

12
ฉันจะแปลง CamelCase เป็นชื่อที่มนุษย์สามารถอ่านได้ใน Java ได้อย่างไร?
ฉันต้องการเขียนวิธีการที่แปลง CamelCase เป็นชื่อที่มนุษย์อ่านได้ นี่คือกรณีทดสอบ: public void testSplitCamelCase() { assertEquals("lowercase", splitCamelCase("lowercase")); assertEquals("Class", splitCamelCase("Class")); assertEquals("My Class", splitCamelCase("MyClass")); assertEquals("HTML", splitCamelCase("HTML")); assertEquals("PDF Loader", splitCamelCase("PDFLoader")); assertEquals("A String", splitCamelCase("AString")); assertEquals("Simple XML Parser", splitCamelCase("SimpleXMLParser")); assertEquals("GL 11 Version", splitCamelCase("GL11Version")); }

6
java lambda สามารถมีพารามิเตอร์มากกว่า 1 ตัวได้หรือไม่?
ใน Java เป็นไปได้ไหมที่แลมบ์ดาจะยอมรับหลายประเภทที่แตกต่างกัน? เช่น: ตัวแปรเดียวทำงาน: Function <Integer, Integer> adder = i -> i + 1; System.out.println (adder.apply (10)); Varargs ยังทำงานได้: Function <Integer [], Integer> multiAdder = ints -> { int sum = 0; for (Integer i : ints) { sum += i; } return sum; }; //.... System.out.println ((multiAdder.apply (new …
157 java  lambda  java-8 

4
BigDecimal เท่ากับ () และ CompareTo ()
พิจารณาคลาสทดสอบอย่างง่าย: import java.math.BigDecimal; /** * @author The Elite Gentleman * */ public class Main { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub BigDecimal x = new BigDecimal("1"); BigDecimal y = new BigDecimal("1.00"); System.out.println(x.equals(y)); System.out.println(x.compareTo(y) == 0 ? "true": "false"); } } …

16
วิธีค้นหาไฟล์ที่ตรงกับสตริงตัวแทนใน Java?
มันควรจะง่ายจริงๆ ถ้าฉันมีสตริงเช่นนี้: ../Test?/sample*.txt วิธีที่เป็นที่ยอมรับโดยทั่วไปในการรับรายการไฟล์ที่ตรงกับรูปแบบนี้คืออะไร (เช่นมันควรจะตรง../Test1/sample22b.txtและ../Test4/sample-spiffy.txtแต่ไม่../Test3/sample2.blahหรือ../Test44/sample2.txt) ฉันดูorg.apache.commons.io.filefilter.WildcardFileFilterแล้วดูเหมือนสัตว์ร้ายที่ถูกต้อง แต่ฉันไม่แน่ใจว่าจะใช้มันเพื่อค้นหาไฟล์ในเส้นทางไดเรกทอรีแบบสัมพัทธ์ได้อย่างไร ฉันคิดว่าฉันสามารถหาแหล่งที่มาของมดได้เนื่องจากมันใช้ไวยากรณ์ไวด์การ์ด แต่ฉันต้องหายไปบางสิ่งที่เห็นได้ชัดที่นี่ ( แก้ไข : ตัวอย่างข้างต้นเป็นเพียงตัวอย่างเท่านั้นฉันกำลังมองหาวิธีการแยกวิเคราะห์เส้นทางทั่วไปที่มีอักขระตัวแทนที่รันไทม์ฉันคิดวิธีทำตามคำแนะนำของ mmyers แต่มันน่ารำคาญไม่ต้องพูดถึง java JRE ดูเหมือนว่าจะใช้สัญลักษณ์แทนอย่างง่าย ๆ ในอาร์กิวเมนต์หลัก (สตริง []) จากอาร์กิวเมนต์เดียวเพื่อ "บันทึก" ฉันเวลาและความยุ่งยาก ... ฉันแค่ดีใจที่ฉันไม่ได้มีข้อโต้แย้งที่ไม่ใช่ไฟล์ใน ผสม.)
157 java  file  wildcard 

9
การเข้าถึงฟังก์ชั่นเสริม Kotlin จาก Java
เป็นไปได้หรือไม่ที่จะเข้าถึงฟังก์ชั่นส่วนขยายจากรหัส Java? ฉันกำหนดฟังก์ชันส่วนขยายในไฟล์ Kotlin package com.test.extensions import com.test.model.MyModel /** * */ public fun MyModel.bar(): Int { return this.name.length() } MyModelคลาส java (สร้าง) อยู่ที่ไหน ตอนนี้ฉันต้องการเข้าถึงมันในรหัส java ปกติของฉัน: MyModel model = new MyModel(); model.bar(); อย่างไรก็ตามนั่นไม่ได้ผล IDE จะไม่รู้จักbar()วิธีการและการรวบรวมล้มเหลว สิ่งที่ใช้กับฟังก์ชั่นคงที่จาก kotlin: public fun bar(): Int { return 2*2 } โดยใช้import com.test.extensions.ExtensionsPackageดังนั้น IDE ของฉันดูเหมือนว่าจะกำหนดค่าอย่างถูกต้อง ฉันค้นหาผ่านไฟล์ …

7
เหตุใดฉันจึงควรใช้ Deque over Stack?
ฉันต้องการStackโครงสร้างข้อมูลสำหรับกรณีการใช้งานของฉัน ฉันควรจะสามารถผลักรายการในโครงสร้างข้อมูลและฉันต้องการดึงรายการสุดท้ายจากกอง JavaDoc สำหรับกองพูดว่า: ชุดการดำเนินการสแต็ก LIFO ที่สมบูรณ์และสอดคล้องกันมากขึ้นถูกจัดเตรียมโดยอินเตอร์เฟส Deque และการประยุกต์ใช้ซึ่งควรใช้ในการกำหนดค่าตามความชอบของคลาสนี้ ตัวอย่างเช่น: Deque<Integer> stack = new ArrayDeque<>(); ฉันไม่ต้องการพฤติกรรมการซิงโครไนซ์ที่นี่อย่างแน่นอนเพราะฉันจะใช้โครงสร้างข้อมูลนี้กับวิธีการ นอกจากนี้ทำไมฉันถึงชอบที่นี่Dequeมากกว่าStack PS: javadoc จาก Deque พูดว่า: Deques สามารถใช้เป็นกองซ้อน LIFO (Last-In-First-Out) ควรใช้อินเทอร์เฟซนี้ในการกำหนดลักษณะคลาสสแต็กดั้งเดิม

10
รหัสเข้าร่วมหัวข้อนี้หมายความว่าอย่างไร
ในรหัสนี้ทั้งสองเข้าร่วมและทำลายหมายถึงอะไร t1.join()อะไรทำให้t2หยุดจนกว่าจะt1ยุติ? Thread t1 = new Thread(new EventThread("e1")); t1.start(); Thread t2 = new Thread(new EventThread("e2")); t2.start(); while (true) { try { t1.join(); t2.join(); break; } catch (InterruptedException e) { e.printStackTrace(); } }

7
ความแตกต่างระหว่าง ActionBarSherlock และความเข้ากันได้ของ ActionBar
ความแตกต่างระหว่างActionBarSherlockและความเข้ากันได้ของ Action Barคืออะไร ไม่กี่วันที่ผ่านมา Google เพิ่งเปิดตัวความเข้ากันได้กับ ActionBar ซึ่งทำให้ฉันสับสนมาก ความเข้ากันได้ของแถบการทำงานนั้นเหมือนกับ ActionBarSherlock และการเข้ารหัสเหมือนกันหรือไม่ ตัวอย่าง: ไอคอนแอพเพื่อนำทาง "up"หรือ ActionBar.Tab รองรับความเข้ากันได้กับ Action Bar หรือไม่

9
คุณจะกำหนดขนาดบัฟเฟอร์ในอุดมคติได้อย่างไรเมื่อใช้ FileInputStream
ฉันมีวิธีที่สร้าง MessageDigest (แฮช) จากไฟล์และฉันต้องทำสิ่งนี้กับไฟล์จำนวนมาก (> = 100,000) ฉันควรทำให้บัฟเฟอร์ที่ใช้อ่านจากไฟล์มีขนาดใหญ่เพียงใดเพื่อเพิ่มประสิทธิภาพ ทุกคนส่วนใหญ่คุ้นเคยกับรหัสพื้นฐาน (ซึ่งฉันจะทำซ้ำที่นี่ในกรณี): MessageDigest md = MessageDigest.getInstance( "SHA" ); FileInputStream ios = new FileInputStream( "myfile.bmp" ); byte[] buffer = new byte[4 * 1024]; // what should this value be? int read = 0; while( ( read = ios.read( buffer ) ) > 0 …

6
Spring MVC: วิธีการตรวจสอบความถูกต้อง?
ฉันต้องการทราบว่าวิธีใดที่ดีที่สุดและดีที่สุดในการตรวจสอบความถูกต้องของแบบฟอร์มอินพุตของผู้ใช้ org.springframework.validation.Validatorฉันได้เห็นนักพัฒนาบางส่วนดำเนินการ คำถามเกี่ยวกับที่: ฉันเห็นมันตรวจสอบชั้นเรียน ชั้นต้องกรอกข้อมูลด้วยตนเองด้วยค่าจากอินพุตของผู้ใช้แล้วส่งต่อไปยังตัวตรวจสอบความถูกต้องหรือไม่? ฉันสับสนเกี่ยวกับวิธีที่สะอาดและดีที่สุดในการตรวจสอบอินพุตของผู้ใช้ ฉันรู้เกี่ยวกับวิธีการแบบดั้งเดิมของการใช้request.getParameter()แล้วด้วยตนเองตรวจสอบแต่ฉันไม่ต้องการที่จะทำการตรวจสอบทั้งหมดที่อยู่ในของฉันnulls Controllerคำแนะนำที่ดีเกี่ยวกับเรื่องนี้จะได้รับการชื่นชมอย่างมาก ฉันไม่ได้ใช้ไฮเบอร์เนตในแอปพลิเคชันนี้

10
วิธีสร้างไฟล์ในไดเรกทอรีใน java?
หากฉันต้องการสร้างไฟล์C:/a/b/test.txtฉันสามารถทำสิ่งต่อไปนี้ได้: File f = new File("C:/a/b/test.txt"); นอกจากนี้ฉันต้องการใช้FileOutputStreamเพื่อสร้างไฟล์ ดังนั้นฉันจะทำอย่างไร ด้วยเหตุผลบางอย่างไฟล์ไม่ได้ถูกสร้างขึ้นในไดเรกทอรีที่ถูกต้อง
156 java  file-io 

10
Http การรับรองความถูกต้องเบื้องต้นใน Java โดยใช้ HttpClient
ฉันพยายามเลียนแบบการทำงานของคำสั่ง curl ใน Java: curl --basic --user username:password -d "" http://ipaddress/test/login ฉันเขียนต่อไปนี้โดยใช้ Commons HttpClient 3.0 แต่อย่างใดก็ได้รับ500 Internal Server Errorจากเซิร์ฟเวอร์ บางคนสามารถบอกฉันได้ว่าฉันทำอะไรผิดหรือเปล่า? public class HttpBasicAuth { private static final String ENCODING = "UTF-8"; /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub try { HttpClient …

19
การใช้ตัวแปรแบบคงที่ส่วนตัวใน Java คืออะไร?
ถ้าตัวแปรถูกประกาศเป็นแล้วผมสามารถเข้าถึงได้จากทุกที่public static varName; ClassName.varNameฉันยังทราบว่าสมาชิกแบบคงที่จะถูกใช้ร่วมกันโดยอินสแตนซ์ทั้งหมดของคลาสและไม่ได้ถูกจัดสรรใหม่ในแต่ละอินสแตนซ์ การประกาศตัวแปรprivate static varName;แตกต่างจากการประกาศตัวแปรprivate varName;หรือไม่? ในทั้งสองกรณีมันไม่สามารถเข้าถึงได้เป็นClassName.varNameหรือเป็นClassInstance.varNameจากชั้นอื่น ๆ การประกาศตัวแปรเป็นแบบสแตติกให้คุณสมบัติพิเศษอื่น ๆ หรือไม่

30
Java ลำดับ Fibonacci แบบเรียกซ้ำ
โปรดอธิบายรหัสง่าย ๆ นี้: public int fibonacci(int n) { if(n == 0) return 0; else if(n == 1) return 1; else return fibonacci(n - 1) + fibonacci(n - 2); } ฉันสับสนกับบรรทัดสุดท้ายโดยเฉพาะอย่างยิ่งเพราะถ้าเช่น n = 5 แล้ว fibonacci (4) + fibonacci (3) จะถูกเรียกและต่อไป แต่ฉันไม่เข้าใจว่าอัลกอริทึมนี้คำนวณค่าที่ดัชนี 5 โดยวิธีนี้ได้อย่างไร วิธี. โปรดอธิบายด้วยรายละเอียดมากมาย!

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