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

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

15
วิธีการรับเวลาปัจจุบันในรูปแบบ YYYY-MM-DD HH: MI: Sec.Millisecond ใน Java?
รหัสด้านล่างให้เวลาปัจจุบันกับฉัน แต่มันไม่ได้บอกอะไรเกี่ยวกับมิลลิวินาที public static String getCurrentTimeStamp() { SimpleDateFormat sdfDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//dd/MM/yyyy Date now = new Date(); String strDate = sdfDate.format(now); return strDate; } ฉันได้รับวันในรูปแบบ2009-09-22 16:47:08 (YYYY-MM-DD HH: MI: ก.ล.ต. ) แต่ฉันต้องการดึงเวลาปัจจุบันในรูปแบบ2009-09-22 16:47:08.128((YYYY-MM-DD HH: MI: Sec.Ms) - ที่ 128 บอกมิลลิวินาที SimpleTextFormatจะทำงานได้ดี หน่วยเวลาที่สั้นที่สุดคือวินาที แต่ฉันจะได้รับมิลลิวินาทีได้อย่างไร
641 java  date 


30
ทำไมตัวแปรแบบคงที่จึงถือว่าชั่วร้าย?
ฉันเป็นโปรแกรมเมอร์ Java ที่ยังใหม่กับโลกธุรกิจ เมื่อเร็ว ๆ นี้ฉันได้พัฒนาแอปพลิเคชันโดยใช้Groovyและ Java จากรหัสที่ฉันเขียนนั้นใช้สแตติคจำนวนค่อนข้างดี ฉันถูกล็อตเทคนิคระดับสูงขอให้ลดจำนวนสแตติคที่ใช้ ฉัน googled เกี่ยวกับเดียวกันและฉันพบว่าโปรแกรมเมอร์จำนวนมากค่อนข้างต่อต้านการใช้ตัวแปรคงที่ ฉันพบว่าตัวแปรคงที่สะดวกในการใช้ และฉันคิดว่าพวกเขามีประสิทธิภาพด้วย (โปรดแก้ไขให้ฉันถ้าฉันผิด) เพราะถ้าฉันต้องโทร 10,000 ครั้งไปยังฟังก์ชั่นหนึ่งในชั้นเรียนฉันก็ดีใจที่ทำให้วิธีนี้คงที่และใช้วิธีตรงไปตรงมาClass.methodCall()แทน ถ่วงหน่วยความจำที่มี 10,000 อินสแตนซ์ของคลาสใช่มั้ย นอกจากนี้สถิตศาสตร์ลดการพึ่งพาระหว่างกันในส่วนอื่น ๆ ของรหัส พวกเขาสามารถทำหน้าที่เป็นผู้ถือครองรัฐที่สมบูรณ์แบบ เพิ่มไปนี้ผมพบว่าสถิตจะดำเนินการกันอย่างแพร่หลายในบางภาษาเช่นSmalltalkและสกาล่า เหตุใดการกดขี่เพื่อสถิตยศาสตร์จึงเป็นที่แพร่หลายในหมู่โปรแกรมเมอร์ (โดยเฉพาะในโลกของ Java) ป.ล. : โปรดแก้ไขให้ถูกต้องหากข้อสันนิษฐานของฉันเกี่ยวกับสถิตศาสตร์นั้นไม่ถูกต้อง
635 java  static 

30
ไม่มีการรวบรวมในสภาพแวดล้อมนี้ บางทีคุณกำลังใช้งาน JRE มากกว่า JDK
ฉันกำลังรวบรวมโครงการใน Eclipse โดยใช้ m2eclipse ฉันตั้งค่าเส้นทาง JDK ใน Eclipse ดังนี้: Windows-->preferences-->installed jres--> jdk1.7.xx path แต่นี่แสดงข้อผิดพลาด [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? [INFO] 1 error [INFO] ------------------------------------------------------------- [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] …


5
วิธีการตรวจสอบว่าวิธีการเฉพาะไม่ได้เรียกว่าใช้ Mockito?
วิธีการตรวจสอบว่าวิธีการไม่ได้เรียกว่าการพึ่งพาของวัตถุ? ตัวอย่างเช่น: public interface Dependency { void someMethod(); } public class Foo { public bar(final Dependency d) { ... } } ด้วยการทดสอบฟู: public class FooTest { @Test public void dependencyIsNotCalled() { final Foo foo = new Foo(...); final Dependency dependency = mock(Dependency.class); foo.bar(dependency); **// verify here that someMethod was not …
625 java  tdd  mockito 

9
IntelliJ: ห้ามใช้สัญลักษณ์แทนการนำเข้า
มีวิธีบอก IntelliJ ไม่ให้ใช้การนำเข้าไวด์การ์ดหรือไม่? ใต้ 'การตั้งค่า> ลักษณะรหัส> นำเข้า' ฉันจะเห็นว่าคุณสามารถระบุ 'การนับชั้น' ก่อน IntelliJ โดยใช้การนำเข้าสัญลักษณ์แทน อย่างไรก็ตามหากฉันไม่ต้องการใช้การนำเข้าไวด์การ์ดฉันสามารถปิดฟังก์ชั่นนี้ได้หรือไม่? ฉันได้ลองใส่ -1 หรือปล่อยให้ฟิลด์นั้นว่างเปล่า แต่นั่นก็แค่บอก IntelliJ ให้ใช้สัญลักษณ์แทนการนำเข้าเสมอ เห็นได้ชัดว่าวิธีแก้ปัญหาที่ไม่ดีจะวางจำนวนที่น่าขันเพื่อให้คุณไม่เคยพบกับการนำเข้าไวด์การ์ด แต่ฉันหวังว่าจะมีวิธีที่ดีกว่าในการปิด

17
วิธีอัปเดตค่ากำหนดรหัสใน hashmap ได้อย่างไร
สมมติว่าเรามีHashMap<String, Integer>ภาษาจาวา ฉันจะอัพเดต (เพิ่มขึ้น) จำนวนเต็มของสตริง - คีย์สำหรับการมีอยู่ของสตริงที่ฉันค้นหาแต่ละครั้งได้อย่างไร หนึ่งสามารถลบและป้อนคู่อีกครั้ง แต่ค่าใช้จ่ายจะเป็นปัญหา อีกวิธีหนึ่งคือเพียงแค่ใส่คู่ใหม่และแทนที่เดิม ในกรณีหลังนี้จะเกิดอะไรขึ้นหากมีการชนกันของรหัสแฮชโค้ดกับรหัสใหม่ที่ฉันพยายามแทรก พฤติกรรมที่ถูกต้องสำหรับ hashtable คือการกำหนดสถานที่อื่นให้หรือทำรายการจากมันในที่ฝากข้อมูลปัจจุบัน
624 java  key  hashmap 

17
Spring Framework มีไว้เพื่ออะไร? [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ฉันได้ยินมามากมายเกี่ยวกับSpringผู้คนกำลังพูดกันทั่วทั้งเว็บว่า Spring เป็นกรอบที่ดีสำหรับการพัฒนาเว็บ Spring Framework มีไว้เพื่ออะไร?
623 java  spring  frameworks 

22
อะไรคือความแตกต่างระหว่าง == และเท่ากับ () ใน Java?
ฉันต้องการชี้แจงหากฉันเข้าใจสิ่งนี้อย่างถูกต้อง: == เป็นการเปรียบเทียบการอ้างอิงคือวัตถุทั้งคู่ชี้ไปที่ตำแหน่งหน่วยความจำเดียวกัน .equals() ประเมินการเปรียบเทียบค่าในวัตถุ

30
SLF4J: โหลดคลาส“ org.slf4j.impl.StaticLoggerBinder” ไม่สำเร็จ
แอ็พพลิเคชันของฉันจะถูกปรับใช้บนทั้ง tcServer และ WebSphere 6.1 แอปพลิเคชั่นนี้ใช้ ehCache และต้องใช้ slf4j ในการพึ่งพา เป็นผลให้ฉันเพิ่ม slf4j-api.jar (1.6) jar ในบันเดิลไฟล์สงครามของฉัน แอปพลิเคชันทำงานได้ดีใน tcServer ยกเว้นข้อผิดพลาดต่อไปนี้: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. แต่เมื่อฉันปรับใช้ใน WebSphere java.lang.NoClassDefFoundError: org.slf4j.impl.StaticLoggerBinderฉันได้รับ ยังมาพร้อมกับ Failed to load class "org.slf4j.impl.StaticMDCBinder" ฉันได้ตรวจสอบ classpaths ของทั้งสองแอ็พพลิเคชันเซิร์ฟเวอร์แล้วและไม่มี …
619 java  websphere  slf4j 


11
ปัญหาใดที่ควรพิจารณาเมื่อลบล้างเท่ากับและ hashCode ใน Java
คำตอบของคำถามนี้เป็นความพยายามของชุมชน แก้ไขคำตอบที่มีอยู่เพื่อปรับปรุงโพสต์นี้ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ จะต้องพิจารณาประเด็น / ข้อผิดพลาดใดบ้างเมื่อเอาชนะequalsและhashCode?

26
ใน Java วิธีที่ดีที่สุดในการกำหนดขนาดของวัตถุคืออะไร?
Наэтотвопросестьответына กองมากเกินнарусском : Какузнатьразмеробъекта (коллекции) впамяти? ฉันมีแอปพลิเคชันที่อ่านไฟล์ CSV พร้อมแถวข้อมูลจำนวนมาก ฉันให้ผู้ใช้บทสรุปของจำนวนแถวขึ้นอยู่กับประเภทของข้อมูล แต่ฉันต้องการที่จะให้แน่ใจว่าผมไม่ได้อ่านในแถวมากเกินไปของข้อมูลและสาเหตุOutOfMemoryErrors แต่ละแถวแปลเป็นวัตถุ มีวิธีง่ายๆในการหาขนาดของวัตถุนั้นโดยทางโปรแกรมหรือไม่? มีการอ้างอิงที่กำหนดวิธีขนาดใหญ่ประเภทและการอ้างอิงวัตถุดั้งเดิมใช้สำหรับVM? ตอนนี้ฉันมีโค้ดที่อ่านได้มากถึง32,000 แถวแต่ฉันก็อยากมีโค้ดที่อ่านมากที่สุดเท่าที่จะเป็นไปได้จนกว่าฉันจะใช้หน่วยความจำ32MB อาจเป็นคำถามที่แตกต่างกัน แต่ฉันก็ยังอยากจะรู้
617 java  memory 

8
มีวิธีใดบ้างในการประกาศอาร์เรย์ในบรรทัด
สมมติว่าฉันมีเมธอด m () ที่รับอาเรย์ของสตริงเป็นอาร์กิวเมนต์ มีวิธีที่ฉันสามารถประกาศอาร์เรย์นี้ในบรรทัดเมื่อฉันโทร? ie แทน: String[] strs = {"blah", "hey", "yo"}; m(strs); ฉันสามารถแทนที่มันด้วยหนึ่งบรรทัดและหลีกเลี่ยงการประกาศตัวแปรที่ตั้งชื่อที่ฉันจะไม่ใช้หรือไม่
617 java  arrays 

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