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

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

4
วิธีการสร้างอินสแตนซ์คลาสภายในที่ไม่คงที่ภายในวิธีการคงที่?
ฉันมีรหัสต่อไปนี้: public class MyClass { class Inner { int s, e, p; } public static void main(String args[]) { Inner in; } } ถึงส่วนนี้รหัสก็ใช้ได้ แต่ฉันไม่สามารถสร้างอินสแตนซ์ 'in' ภายในวิธีการหลักเหมือนin = new Inner()ที่แสดงnon static field cannot be referenced in static contextได้ ฉันจะทำอย่างไร? ฉันไม่ต้องการที่จะทำให้ฉันInnerระดับคงที่

5
String.replace แบ็กสแลชเดี่ยวทั้งหมดที่มีแบ็กสแลชคู่
ฉันพยายามที่จะแปลงString \something\ลงในString \\something\\การใช้replaceAllแต่ฉันให้ได้รับทุกข้อผิดพลาด ฉันคิดว่านี่คือทางออก: theString.replaceAll("\\", "\\\\"); แต่สิ่งนี้ให้ข้อยกเว้นด้านล่าง: java.util.regex.PatternSyntaxException: Unexpected internal error near index 1

6
การเข้าถึงสมาชิกของรายการใน JSONArray ด้วย Java
ฉันเพิ่งเริ่มใช้ json กับ java ฉันไม่แน่ใจว่าจะเข้าถึงค่าสตริงภายใน JSONArray ได้อย่างไร ตัวอย่างเช่น json ของฉันมีลักษณะดังนี้: { "locations": { "record": [ { "id": 8817, "loc": "NEW YORK CITY" }, { "id": 2873, "loc": "UNITED STATES" }, { "id": 1501 "loc": "NEW YORK STATE" } ] } } รหัสของฉัน: JSONObject req = new JSONObject(join(loadStrings(data.json),"")); JSONObject locs = …
122 java  json  arrays 

10
PreparedStatement จะหลีกเลี่ยงหรือป้องกันการแทรก SQL ได้อย่างไร
ฉันรู้ว่า PreparedStatements หลีกเลี่ยง / ป้องกัน SQL Injection มันทำได้อย่างไร? แบบสอบถามฟอร์มสุดท้ายที่สร้างโดยใช้ PreparedStatements จะเป็นสตริงหรืออย่างอื่น?

11
วิธีง่ายๆในการทดสอบ Junit เดียวกันซ้ำแล้วซ้ำเล่า?
เหมือนชื่อเรื่องฉันกำลังมองหาวิธีง่ายๆในการเรียกใช้การทดสอบ JUnit 4.x หลาย ๆ ครั้งติดต่อกันโดยอัตโนมัติโดยใช้ Eclipse ตัวอย่างจะเรียกใช้การทดสอบเดียวกัน 10 ครั้งติดต่อกันและรายงานผลกลับมา เรามีวิธีที่ซับซ้อนในการทำสิ่งนี้อยู่แล้ว แต่ฉันกำลังมองหาวิธีง่ายๆในการทำเพื่อที่ฉันจะมั่นใจได้ว่าการทดสอบที่ไม่สม่ำเสมอที่ฉันพยายามแก้ไขจะยังคงได้รับการแก้ไข ทางออกที่ดีคือปลั๊กอิน / การตั้งค่า / คุณลักษณะของ Eclipse ที่ฉันไม่รู้จัก
122 java  eclipse  junit 

9
วิธีเปลี่ยนไอคอน MenuItem ใน ActionBar โดยทางโปรแกรม
จะเปลี่ยนไอคอน MenuItem ใน ActionBar โดยทางโปรแกรมได้อย่างไร? ฉันพยายามที่จะใช้ MenuItem menuItem = (MenuItem)findViewById(R.id.action_settings); menuItem.setIcon(getResources().getDrawable(R.drawable.ic_launcher)) แต่มันไม่ได้ผล นี่คือรหัสของฉัน: กิจกรรมหลัก package com.test; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; public class MainActivity extends ActionBarActivity { private Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button)findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() …

5
จะยอมรับพารามิเตอร์วันที่ในคำขอ GET ไปยัง Spring MVC Controller ได้อย่างไร
ฉันมีคำขอ GET ที่ส่งวันที่ในรูปแบบ YYYY-MM-DD ไปยัง Spring Controller รหัสคอนโทรลเลอร์มีดังนี้: @RequestMapping(value="/fetch" , method=RequestMethod.GET) public @ResponseBody String fetchResult(@RequestParam("from") Date fromDate) { //Content goes here } คำขอถูกส่งอย่างถูกต้องเนื่องจากฉันกำลังตรวจสอบกับ Firebug ฉันได้รับข้อผิดพลาด: HTTP Status 400: คำร้องขอที่ไคลเอ็นต์ส่งไปนั้นไม่ถูกต้องตามหลักไวยากรณ์ ฉันจะทำให้คอนโทรลเลอร์ยอมรับรูปแบบของวันที่นี้ได้อย่างไร กรุณาช่วย. ผมทำอะไรผิดหรือเปล่า?
122 java  spring  date  spring-mvc 

2
Mockito Matchers ทำงานอย่างไร?
Mockito matchers อาร์กิวเมนต์ (เช่นany, argThat, eq, sameและArgumentCaptor.capture()) มีพฤติกรรมแตกต่างกันมากจาก matchers Hamcrest ตัวจับคู่ Mockito มักทำให้เกิด InvalidUseOfMatchersException แม้ว่าจะอยู่ในโค้ดที่ดำเนินการนานหลังจากใช้ตัวจับคู่ก็ตาม ตัวจับคู่ Mockito มองเห็นกฎแปลก ๆ เช่นกำหนดให้ใช้ Mockito matchers สำหรับอาร์กิวเมนต์ทั้งหมดเท่านั้นหากอาร์กิวเมนต์หนึ่งในวิธีการที่กำหนดใช้ตัวจับคู่ Mockito matchers สามารถทำให้เกิด NullPointerException เมื่อแทนที่Answers หรือเมื่อใช้(Integer) any()ฯลฯ การปรับโครงสร้างโค้ดด้วยตัวจับคู่ Mockito ในบางวิธีอาจทำให้เกิดข้อยกเว้นและพฤติกรรมที่ไม่คาดคิดและอาจล้มเหลวทั้งหมด เหตุใด Mockito matchers จึงได้รับการออกแบบเช่นนี้และมีการใช้งานอย่างไร?
122 java  mocking  mockito 


10
เพิ่มไฟล์คุณสมบัติไปยัง classpath ของ IntelliJ
ฉันใช้โปรแกรม Java อย่างง่ายจาก IntelliJ IDE โดยใช้เมนู Run-> Run มันทำงานได้ดี ตอนนี้ฉันต้องการเพิ่มการบันทึก log4j ฉันเพิ่มโฟลเดอร์ทรัพยากรภายใต้รูทโปรเจ็กต์ของฉัน ฉันเพิ่มไฟล์ log4j.properties ในโฟลเดอร์นั้น ฉันเปลี่ยนรหัสเพื่อบันทึกบางอย่าง อะไรคือวิธีที่ถูกต้องในการบอกให้ IntelliJ รวมโฟลเดอร์ทรัพยากรใน classpath เพื่อให้เห็นไฟล์คุณสมบัติ ด้วย IntelliJ 8 ฉันเดาได้ว่าเหมือนลิงเมาและในที่สุดก็ใช้งานได้ ตอนนี้ฉันมี 9 คนแล้วและฉันไม่ประสบความสำเร็จเลย ฉันพยายามมาหนึ่งชั่วโมงแล้ว แล้วตัวเลือก "Add to classpath" บางที่ล่ะ / fume / vent / พร่ำเพ้อ

8
เมื่อใดควรใช้วิธีการทั่วไปและเมื่อใดควรใช้ไวด์การ์ด
ฉันกำลังอ่านเกี่ยวกับวิธีการทั่วไปจากOracleDocGenericMethod ฉันค่อนข้างสับสนเกี่ยวกับการเปรียบเทียบเมื่อมีการบอกว่าเมื่อใดควรใช้ไวด์การ์ดและเมื่อใดควรใช้วิธีการทั่วไป อ้างจากเอกสาร interface Collection<E> { public boolean containsAll(Collection<?> c); public boolean addAll(Collection<? extends E> c); } เราสามารถใช้วิธีการทั่วไปได้ที่นี่แทน: interface Collection<E> { public <T> boolean containsAll(Collection<T> c); public <T extends E> boolean addAll(Collection<T> c); // Hey, type variables can have bounds too! } […] สิ่งนี้บอกเราว่าประเภทอาร์กิวเมนต์ถูกใช้สำหรับความหลากหลาย; ผลกระทบเพียงอย่างเดียวคืออนุญาตให้ใช้ประเภทอาร์กิวเมนต์จริงที่หลากหลายในไซต์การร้องขอที่แตกต่างกัน หากเป็นเช่นนั้นควรใช้สัญลักษณ์แทน สัญลักษณ์แทนได้รับการออกแบบมาเพื่อรองรับการพิมพ์ย่อยที่ยืดหยุ่นซึ่งเป็นสิ่งที่เราพยายามแสดงที่นี่ เราไม่คิดว่าไวด์การ์ด(Collection<? extends E> …
122 java  generics  wildcard 

8
PermGen ย่อมาจากอะไร?
ฉันรู้ว่า PermGen คืออะไรใช้เพื่ออะไรทำไมมันถึงล้มเหลววิธีเพิ่ม ฯลฯ สิ่งที่ฉันไม่รู้คือสิ่งที่ PermGen หมายถึงจริงๆ ปลัด ... เก็น ... บ้าง? มีใครรู้บ้างว่า PermGen ย่อมาจากอะไร?
122 java  permgen 

12
วิธีทำให้ System.out.println () สั้นลง
โปรดให้คำแนะนำว่าฉันจะหา lib ได้ที่ไหนเพื่อที่จะใช้นิพจน์ที่สั้นกว่าSystem.out.println()และฉันควรวาง lib นั้นไว้ที่ใด
122 java 

13
วิธีการไดรฟ์ C #, C ++ หรือคอมไพเลอร์ Java เพื่อคำนวณ 1 + 2 + 3 + ... + 1000 ในเวลาคอมไพล์?
ในการสัมภาษณ์ล่าสุดฉันถูกถามคำถามแปลก ๆ ผู้สัมภาษณ์ถามฉันว่าฉันจะคำนวณ 1 + 2 + 3 + ... + 1000 โดยใช้คุณสมบัติคอมไพเลอร์ได้อย่างไร ซึ่งหมายความว่าฉันไม่ได้รับอนุญาตให้เขียนโปรแกรมและเรียกใช้งาน แต่ฉันควรเขียนโปรแกรมที่สามารถขับเคลื่อนคอมไพเลอร์ให้คำนวณผลรวมนี้ในขณะที่คอมไพล์และพิมพ์ผลลัพธ์เมื่อการคอมไพล์เสร็จสิ้น เขาบอกฉันว่าฉันอาจใช้ generics และคุณสมบัติ pre-processor ของคอมไพเลอร์ เป็นไปได้ที่จะใช้คอมไพเลอร์ C ++, C # หรือ Java ความคิดใด ๆ ??? คำถามนี้ไม่เกี่ยวข้องกับการคำนวณผลรวมโดยไม่มีการวนซ้ำใด ๆ ที่ถามที่นี่ นอกจากนี้ควรสังเกตว่าควรคำนวณผลรวมระหว่างการคอมไพล์ ไม่สามารถพิมพ์เฉพาะผลลัพธ์โดยใช้คำสั่งคอมไพเลอร์ C ++ อ่านข้อมูลเพิ่มเติมเกี่ยวกับคำตอบโพสต์ที่ฉันพบว่าการแก้ปัญหาที่เกิดขึ้นในระหว่างการรวบรวมโดยใช้ C ++ แม่แบบที่เรียกว่าmetaprogramming นี่เป็นเทคนิคที่ดร. เออร์วินอุนรูห์ค้นพบโดยบังเอิญระหว่างกระบวนการสร้างมาตรฐานภาษา C ++ คุณสามารถอ่านเพิ่มเติมเกี่ยวกับหัวข้อนี้ในหน้าวิกิพีเดียของ meta-การเขียนโปรแกรม ดูเหมือนว่าจะสามารถเขียนโปรแกรมใน Java โดยใช้คำอธิบายประกอบจาวา …

5
ส่วนหัวของ Android ListView
ฉันมี ListView ที่มีเหตุการณ์บางอย่างอยู่ กิจกรรมจะเรียงตามวันและฉันต้องการให้ส่วนหัวมีวันที่สำหรับทุกวันจากนั้นกิจกรรมจะฟังด้านล่าง นี่คือวิธีที่ฉันเติมรายการนั้น: ArrayList<TwoText> crs = new ArrayList<TwoText>(); crs.add(new TwoText("This will be header", event.getDate())); for (Event event : events) { crs.add(new TwoText(event.getStartString() + "-" + event.getEndString(), event.getSubject())); } arrayAdapter = new TwoTextArrayAdapter(this, R.layout.my_list_item, crs); lv1.setAdapter(arrayAdapter); และนี่คือลักษณะของคลาส TwoText ของฉัน: public class TwoText { public String classID; public String state; …

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