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

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

11
วิธีใช้ java.net.URLConnection เพื่อเริ่มและจัดการคำขอ HTTP
ใช้java.net.URLConnectionถูกถามเกี่ยวกับที่นี่มักจะสวยและออราเคิลกวดวิชาเป็นเกินไปรัดกุมเกี่ยวกับมัน บทช่วยสอนนั้นโดยทั่วไปจะแสดงวิธีการเริ่มคำขอ GET และอ่านการตอบสนอง มันไม่ได้อธิบายว่าจะใช้ที่ใดในที่อื่น ๆ เพื่อดำเนินการตามคำขอ POST ตั้งค่าส่วนหัวคำขออ่านส่วนหัวตอบสนองจัดการกับคุกกี้ส่งแบบฟอร์ม HTML อัปโหลดไฟล์ ฯลฯ ดังนั้นฉันjava.net.URLConnectionจะใช้เพื่อดำเนินการและจัดการคำขอ HTTP "ขั้นสูง" ได้อย่างไร

30
วิธีที่ง่ายที่สุดในการพิมพ์อาร์เรย์ Java คืออะไร
ใน Java อาร์เรย์จะไม่แทนที่toString()ดังนั้นหากคุณพยายามพิมพ์โดยตรงคุณจะได้รับclassName+ '@' + เลขฐานสิบหกของhashCodeอาร์เรย์ตามที่กำหนดโดยObject.toString(): int[] intArray = new int[] {1, 2, 3, 4, 5}; System.out.println(intArray); // prints something like '[I@3343c8b3' แต่โดยปกติแล้วเราต้องการอะไรมากกว่า[1, 2, 3, 4, 5]นี้ วิธีที่ง่ายที่สุดในการทำเช่นนั้นคืออะไร? นี่คือตัวอย่างอินพุตและเอาต์พุต: // Array of primitives: int[] intArray = new int[] {1, 2, 3, 4, 5}; //output: [1, 2, 3, 4, 5] // …
1944 java  arrays  printing 

30
ฉันจะแยกลูปซ้อนกันใน Java ได้อย่างไร
ฉันมีโครงสร้างวนซ้อนกันเช่นนี้: for (Type type : types) { for (Type t : types2) { if (some condition) { // Do something and break... break; // Breaks out of the inner loop } } } ตอนนี้ฉันจะแยกลูปทั้งสองออกได้อย่างไร ฉันได้ดูคำถามที่คล้ายกัน แต่ไม่มีใครกังวล Java โดยเฉพาะ ฉันใช้โซลูชันเหล่านี้ไม่ได้เพราะ gotos ที่ใช้มากที่สุด ฉันไม่ต้องการใส่วนรอบในวิธีอื่น ฉันไม่ต้องการวิ่งวนซ้ำ เมื่อแตกฉันทำเสร็จแล้วด้วยการดำเนินการบล็อกลูป
1818 java  loops  nested-loops 

17
JavaBean คืออะไร
ฉันเข้าใจว่าฉันคิดว่า "Bean" เป็นคลาส Java ที่มีคุณสมบัติและ getters / setters เท่าที่ฉันเข้าใจมันเทียบเท่ากับโครงสร้าง C มันเป็นเรื่องจริงเหรอ? นอกจากนี้มีความแตกต่างทางวากยสัมพันธ์จริงระหว่างถั่วกับคลาสปกติหรือไม่? มีคำจำกัดความพิเศษหรืออินเทอร์เฟซหรือไม่? โดยพื้นฐานแล้วทำไมถึงมีคำศัพท์สำหรับเรื่องนี้? นอกจากนี้ยังมีสิ่งที่ไม่Serializableอินเตอร์เฟซหมายถึงอะไร?

15
ทำไมรหัสนี้โดยใช้สตริงสุ่มพิมพ์“ สวัสดีโลก”
คำสั่งพิมพ์ต่อไปนี้จะพิมพ์ "hello world" มีใครอธิบายเรื่องนี้ได้บ้าง System.out.println(randomString(-229985452) + " " + randomString(-147909649)); และrandomString()มีลักษณะเช่นนี้: public static String randomString(int i) { Random ran = new Random(i); StringBuilder sb = new StringBuilder(); while (true) { int k = ran.nextInt(27); if (k == 0) break; sb.append((char)('`' + k)); } return sb.toString(); }
1769 java  string  random 

27
คลาสภายใน Java และคลาสที่ซ้อนกันแบบคงที่
อะไรคือความแตกต่างที่สำคัญระหว่างคลาสภายในและคลาสที่ซ้อนกันแบบคงที่ใน Java การออกแบบ / การนำไปใช้มีบทบาทในการเลือกหนึ่งในสิ่งเหล่านี้หรือไม่?

30
จะสร้างสตริงตัวอักษรและตัวเลขแบบสุ่มได้อย่างไร
ฉันกำลังมองหาอัลกอริทึม Java ง่ายๆในการสร้างสตริงตัวอักษรและตัวเลขแบบเทียมหลอก ในสถานการณ์ของฉันมันจะถูกใช้เป็นเซสชั่น / ตัวระบุคีย์ที่ไม่ซ้ำใคร500K+รุ่นหนึ่ง (ความต้องการของฉันไม่ต้องการอะไรที่ซับซ้อนกว่านี้) เป็นการดีที่ฉันจะสามารถระบุความยาวขึ้นอยู่กับความต้องการเฉพาะของฉัน ตัวอย่างเช่นสตริงที่มีความยาว 12 ที่สร้างขึ้นอาจมีลักษณะคล้าย"AEYGF7K0DM1X"กัน

15
เปรียบเทียบสมาชิก Java enum: == หรือเท่ากับ ()?
ฉันรู้ว่า Java enums ถูกคอมไพล์ไปยังคลาสที่มีคอนสตรัคเตอร์ส่วนตัวและสมาชิกสแตติกสาธารณะ เมื่อเปรียบเทียบสมาชิกสองคนของ enum ที่กำหนดฉันใช้เสมอ.equals()เช่น public useEnums(SomeEnum a) { if(a.equals(SomeEnum.SOME_ENUM_VALUE)) { ... } ... } อย่างไรก็ตามฉันเพิ่งเจอรหัสบางส่วนที่ใช้ตัวดำเนินการเท่ากับ==แทน. equals (): public useEnums2(SomeEnum a) { if(a == SomeEnum.SOME_ENUM_VALUE) { ... } ... } ฉันควรใช้โอเปอเรเตอร์แบบใด
1736 java  enums 

30
จะหลีกเลี่ยงรหัส Java ในไฟล์ JSP ได้อย่างไร
ฉันใหม่กับ Java EE และฉันรู้ว่ามีบางอย่างเหมือนสามบรรทัดต่อไปนี้ <%= x+1 %> <%= request.getParameter("name") %> <%! counter++; %> เป็นวิธีการเข้ารหัสโรงเรียนเก่าและใน JSP เวอร์ชัน 2 มีวิธีการหลีกเลี่ยงรหัส Java ในไฟล์ JSP มีใครช่วยบอกฉันเกี่ยวกับทางเลือก JSP 2 บรรทัดและเทคนิคนี้เรียกว่าอะไร?
1673 java  jsp  scriptlet 

23
Java รองรับค่าพารามิเตอร์เริ่มต้นหรือไม่
ฉันเจอโค้ด Java บางตัวที่มีโครงสร้างต่อไปนี้: public MyParameterizedFunction(String param1, int param2) { this(param1, param2, false); } public MyParameterizedFunction(String param1, int param2, boolean param3) { //use all three parameters here } ฉันรู้ว่าใน C ++ ฉันสามารถกำหนดพารามิเตอร์เป็นค่าเริ่มต้น ตัวอย่างเช่น: void MyParameterizedFunction(String param1, int param2, bool param3=false); Java รองรับไวยากรณ์ประเภทนี้หรือไม่ มีเหตุผลใดบ้างที่ทำให้ไวยากรณ์สองขั้นตอนนี้เป็นที่ต้องการมากกว่า

30
วิธีการแยกสตริงใน Java
ฉันมีสตริง"004-034556"ที่ฉันต้องการแยกออกเป็นสองสาย: string1="004"; string2="034556"; นั่นหมายความว่าสายแรกจะมีตัวละครก่อนและสตริงที่สองจะประกอบด้วยอักขระหลังจากที่'-' '-'ฉันต้องการตรวจสอบว่าสตริงมี'-'อยู่ในนั้นหรือไม่ ถ้าไม่ฉันจะโยนข้อยกเว้น ฉันจะทำสิ่งนี้ได้อย่างไร
1639 java  string  split 

30
จัดเรียงแผนที่ <คีย์ค่า> ตามค่า
ฉันค่อนข้างใหม่กับ Java และมักพบว่าฉันต้องเรียงลำดับMap&lt;Key, Value&gt;ค่า เนื่องจากค่านั้นไม่ซ้ำกันฉันจึงพบว่าฉันแปลงค่าkeySetเป็นarrayและเรียงลำดับอาร์เรย์นั้นผ่านการจัดเรียงอาร์เรย์ด้วยตัวเปรียบเทียบแบบกำหนดเองที่เรียงลำดับตามค่าที่เกี่ยวข้องกับคีย์ มีวิธีที่ง่ายกว่านี้ไหม?


30
วิธีแก้ไข java.lang.UnsupportedClassVersionError: รุ่น Major.minor ไม่สนับสนุน
ฉันกำลังพยายามใช้Notepad ++เป็นเครื่องมือในการแก้ไข, เรียกใช้, คอมไพล์และอื่น ๆ ฉันติดตั้งJREแล้วและได้ตั้งค่าตัวแปรพา ธ ของฉันไปยัง.../binไดเรกทอรี เมื่อฉันเรียกใช้ "Hello world" ใน Notepad ++ ฉันได้รับข้อความนี้: java.lang.UnsupportedClassVersionError: test_hello_world : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) ......................................... ฉันคิดว่าปัญหานี่เป็นเรื่องเกี่ยวกับรุ่น; Java บางเวอร์ชันอาจเก่าหรือใหม่เกินไป ฉันจะแก้ไขได้อย่างไร ฉันควรติดตั้ง JDK และตั้งค่าตัวแปรเส้นทางของฉันเป็น JDK แทนที่จะเป็น JRE หรือไม่ อะไรคือความแตกต่างระหว่างPATHตัวแปรใน JRE หรือ JDK

30
เหตุใดจึงต้องใช้ getters และ setters / accessors
อะไรคือข้อดีของการใช้ getters และ setters - ที่รับและตั้งค่า - แทนที่จะใช้เพียงฟิลด์สาธารณะสำหรับตัวแปรเหล่านั้น หาก getters และ setters ทำมากกว่าแค่การรับ / เซตง่ายๆฉันสามารถหาอันนี้ออกมาได้อย่างรวดเร็ว แต่ฉันไม่ชัดเจน 100% ว่า: public String foo; มีอะไรที่แย่ไปกว่า: private String foo; public void setFoo(String foo) { this.foo = foo; } public String getFoo() { return foo; } ในขณะที่อดีตใช้รหัสน้อยกว่ามาก
1541 java  oop  setter  getter  abstraction 

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