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

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

2
ในตัว Java 8 เพรดิเคตที่คืนค่าจริงเสมอ?
Google ฝรั่งมีกริยาที่ผลตอบแทนเสมอ trueJava 8 มีบางอย่างที่คล้ายกันPredicateหรือไม่? ฉันรู้ว่าฉันสามารถใช้แต่ฉันต้องการบางสิ่งบางอย่างที่ทำไว้ล่วงหน้าเพื่อที่คล้ายคลึงกัน(foo)->{return true;}Collections.emptySet()
130 java  lambda  java-8  predicate 

3
จัดรูปแบบจำนวนเต็มโดยใช้ Java String Format
ฉันสงสัยว่าเป็นไปได้หรือไม่โดยใช้เมธอด String.format ใน Java เพื่อให้จำนวนเต็มนำหน้าศูนย์? ตัวอย่างเช่น: 1 จะกลายเป็น 001 2 จะกลายเป็น 002 ... 11 จะกลายเป็น 011 12 จะกลายเป็น 012 ... 526 จะยังคงเป็น 526 ... ฯลฯ ในขณะนี้ฉันได้ลองใช้รหัสต่อไปนี้: String imageName = "_%3d" + "_%s"; for( int i = 0; i < 1000; i++ ){ System.out.println( String.format( imageName, i, "foo" ) ); } …

5
Gradle,“ sourceCompatibility” กับ“ targetCompatibility”?
อะไรคือความสัมพันธ์ / ความแตกต่างระหว่างsourceCompatibilityและtargetCompatibility? จะเกิดอะไรขึ้นเมื่อตั้งค่าเป็นค่าต่างๆ ตามเอกสาร Gradle : sourceCompatibilityคือ "ความเข้ากันได้ของเวอร์ชัน Java ที่จะใช้เมื่อรวบรวมซอร์ส Java" targetCompatibilityคือ "เวอร์ชัน Java สำหรับสร้างคลาสสำหรับ" ความเข้าใจของฉันคือtargetCompatibilityจะสร้าง java bytecode ที่เข้ากันได้กับ Java เวอร์ชันเฉพาะนี่เป็นส่วนย่อยของฟังก์ชันการทำงานของsourceCompatibilityหรือไม่?
130 gradle  java 

11
วิธีรับบริบทในอะแด็ปเตอร์มุมมองรีไซเคิล
ฉันพยายามใช้ไลบรารี picasso เพื่อให้สามารถโหลด url ไปยัง imageView ได้ แต่ฉันไม่สามารถcontextใช้ไลบรารี picasso ได้อย่างถูกต้อง public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> { private List<Post> mDataset; // Provide a reference to the views for each data item // Complex data items may need more than one view per item, and // you provide access to all the …


10
การเพิ่มส่วนหัวของคำขอทั้งหมดด้วย Retrofit 2
เอกสารประกอบของ Retrofit 2 ระบุว่า: ส่วนหัวที่ต้องเพิ่มให้กับทุกคำขอสามารถระบุได้โดยใช้ตัวสกัดกั้น OkHttp สามารถทำได้อย่างง่ายดายโดยใช้เวอร์ชันก่อนหน้านี่คือ QA ที่เกี่ยวข้อง แต่เมื่อใช้ชุดติดตั้งเพิ่ม 2 ฉันไม่พบสิ่งที่เหมือนsetRequestInterceptorหรือsetInterceptorวิธีที่สามารถใช้กับRetrofit.Builderวัตถุได้ ดูเหมือนว่าไม่มีRequestInterceptorในOkHttpอีกต่อไป เอกสารของ Retrofit อ้างถึงInterceptorซึ่งฉันไม่ค่อยเข้าใจวิธีใช้เพื่อจุดประสงค์นี้ ฉันจะทำเช่นนี้ได้อย่างไร?

29
Intellij ไม่สามารถแก้ไขสัญลักษณ์เมื่อนำเข้า
ปัญหานี้เกิดขึ้นเป็นระยะ ๆ สำหรับไลบรารีและโครงการต่างๆ เมื่อพยายามนำเข้าไลบรารีแพ็กเกจจะได้รับการจดจำ แต่ไม่สามารถแก้ไขชื่อคลาสได้ ถ้าในคำสั่งการนำเข้าฉันright-click -> Goto -> the package's declarationฉันเห็นคลาสที่แยกย่อยทั้งหมดแสดงในบานหน้าต่างด้านข้าง - รวมถึงคลาสที่ฉันต้องการ - ถ้าฉันพยายามเติมคำสั่งนำเข้าโดยอัตโนมัติฉันสังเกตเห็นว่าคลาสที่ฉันต้องการไม่มีอยู่ใน หล่นลง. ฉันพยายามทำให้แคชไม่ถูกต้องแล้วไม่ได้ผล ฉันไม่พบข้อขัดแย้งของคลาสใด ๆ - ไม่มีไฟล์ jar อื่นใน classpath ของฉันที่มีชื่อแพ็กเกจเดียวกัน ฉันสามารถนำเข้าคลาสนี้ไปยังโปรเจ็กต์อื่นได้ โปรดดูภาพหน้าจอ: ใครมีเบาะแส?

12
จะใช้การรอและการแจ้งเตือนใน Java ได้อย่างไรโดยไม่ใช้
ฉันมีเมทริกซ์ 2 ตัวและต้องคูณพวกมันแล้วพิมพ์ผลลัพธ์ของแต่ละเซลล์ ทันทีที่เซลล์หนึ่งพร้อมฉันต้องพิมพ์ แต่ตัวอย่างเช่นฉันต้องพิมพ์เซลล์ [0] [0] ก่อนเซลล์ [2] [0] แม้ว่าผลลัพธ์ของ [2] [0] จะพร้อมก่อน . ดังนั้นฉันต้องพิมพ์ตามคำสั่ง ดังนั้นความคิดของฉันคือการทำให้เธรดเครื่องพิมพ์รอจนกว่าmultiplyThreadจะแจ้งให้ทราบว่าเซลล์ที่ถูกต้องพร้อมที่จะพิมพ์แล้วprinterThreadจะพิมพ์เซลล์และกลับไปรอเป็นต้น ดังนั้นฉันมีหัวข้อนี้ที่จะคูณ: public void run() { int countNumOfActions = 0; // How many multiplications have we done int maxActions = randomize(); // Maximum number of actions allowed for (int i = 0; i < …

2
เราสามารถแปลงอาร์เรย์ไบต์เป็น InputStream ใน Java ได้หรือไม่?
เราสามารถแปลงอาร์เรย์ไบต์เป็น InputStream ใน Java ได้หรือไม่? ฉันดูทางอินเทอร์เน็ต แต่หาไม่เจอ ฉันมีวิธีการที่มี InputStream เป็นอาร์กิวเมนต์ InputStream cphฉันมีการเข้ารหัส base64 ดังนั้นฉันจึงต้องถอดรหัสโดยใช้ BASE64Decoder decoder = new BASE64Decoder(); byte[] decodedBytes = decoder.decodeBuffer(cph); ตอนนี้ฉันจะแปลงdecodedBytesเป็นInputStreamอย่างไร
129 java  base64  inputstream 

7
ไบต์ [] ถึง InputStream หรือ OutputStream
ฉันมีคอลัมน์หยดในตารางฐานข้อมูลของฉันซึ่งฉันต้องใช้byte[]ในโปรแกรม Java ของฉันเป็นการทำแผนที่และการใช้ข้อมูลนี้ฉันต้องแปลงเป็นหรือInputStream OutputStreamแต่ฉันไม่รู้ว่าเกิดอะไรขึ้นภายในเมื่อฉันทำเช่นนั้น ทุกคนสามารถอธิบายสั้น ๆ ว่าเกิดอะไรขึ้นเมื่อฉันทำ Conversion นี้

7
คลาส String จะแทนที่โอเปอเรเตอร์ + อย่างไร
ทำไมใน Java คุณสามารถเพิ่ม Strings ด้วยตัวดำเนินการ + เมื่อ String เป็นคลาส? ในString.javaรหัสฉันไม่พบการใช้งานสำหรับผู้ประกอบการนี้ แนวคิดนี้ละเมิดการวางวัตถุหรือไม่?
129 java  string  object 

3
Java GC (การจัดสรรล้มเหลว)
ทำไม "GC (การจัดสรรล้มเหลว)" เสมอ เซิร์ฟเวอร์ Java HotSpot (TM) 64- บิต VM (25.25-b02) สำหรับ linux-amd64 JRE ( 1.8.0_25 -b17), CommandLine flags: -XX:CMSInitiatingOccupancyFraction=60 -XX:GCLogFileSize=10485760 -XX:+HeapDumpOnOutOfMemoryError -XX:InitialHeapSize=32212254720 -XX:MaxHeapSize=32212254720 -XX:NewRatio=10 -XX:OldPLABSize=16 -XX:ParallelGCThreads=4 -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintStringTableStatistics -XX:+PrintTenuringDistribution -XX:StringTableSize=1000003 -XX:SurvivorRatio=4 -XX:TargetSurvivorRatio=50 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseParNewGC -XX:+UseConcMarkSweepGC 27.329: [GC (Allocation Failure) 27.329: [ParNew Desired survivor size 44728320 …

11
รับความยาวของอาร์เรย์ของอาร์เรย์ 2 มิติใน Java
ฉันต้องได้ความยาวของอาร์เรย์ 2 มิติสำหรับทั้งแถวและคอลัมน์ ฉันทำสิ่งนี้สำเร็จโดยใช้รหัสต่อไปนี้: public class MyClass { public static void main(String args[]) { int[][] test; test = new int[5][10]; int row = test.length; int col = test[0].length; System.out.println(row); System.out.println(col); } } พิมพ์ออกมา 5, 10 ตามที่คาดไว้ ตอนนี้ดูที่บรรทัดนี้: int col = test[0].length; โปรดสังเกตว่าฉันต้องอ้างอิงแถวใดแถวหนึ่งเพื่อรับความยาวคอลัมน์ สำหรับฉันดูเหมือนว่าน่าเกลียดอย่างไม่น่าเชื่อ นอกจากนี้หากอาร์เรย์ถูกกำหนดเป็น: test = new int[0][10]; จากนั้นรหัสจะล้มเหลวเมื่อพยายามรับความยาว มีวิธีที่แตกต่าง …

12
การแปลงสัญลักษณ์ตัวอักษรเน้นเสียงเป็นตัวอักษรภาษาอังกฤษ
ปัญหาคืออย่างที่คุณทราบมีอักขระหลายพันตัวในแผนภูมิ Unicodeและฉันต้องการแปลงอักขระที่คล้ายกันทั้งหมดเป็นตัวอักษรที่เป็นตัวอักษรภาษาอังกฤษ ตัวอย่างเช่นนี่คือการแปลงบางส่วน: ҥ->H Ѷ->V Ȳ->Y Ǭ->O Ƈ->C tђє Ŧค๓เℓy --> the Family ... และฉันเห็นว่ามีตัวอักษร A / a มากกว่า 20 เวอร์ชัน และฉันไม่รู้ว่าจะจัดประเภทอย่างไร ดูเหมือนเข็มในกองหญ้า รายการที่สมบูรณ์ของตัวอักษร Unicode ที่http://www.ssec.wisc.edu/~tomw/java/unicode.html หรือhttp://unicode.org/charts/charindex.html เพียงแค่ลองเลื่อนลงและดูรูปแบบของตัวอักษร ฉันจะแปลงสิ่งเหล่านี้ด้วย Java ได้อย่างไร โปรดช่วยฉัน :(

6
ความแตกต่างระหว่าง initLoader และ restartLoader ใน LoaderManager
ฉันหลงทางอย่างสิ้นเชิงเกี่ยวกับความแตกต่างระหว่างinitLoaderและrestartLoaderหน้าที่ของLoaderManager: พวกเขาทั้งสองมีลายเซ็นเดียวกัน restartLoader ยังสร้างตัวโหลดหากไม่มีอยู่ ("เริ่มต้นใหม่หรือรีสตาร์ทตัวโหลดที่มีอยู่ในตัวจัดการนี้") มีความสัมพันธ์ระหว่างสองวิธีนี้หรือไม่? โทรrestartLoaderตลอดinitLoaderไหม? โทรมาrestartLoaderไม่ต้องโทรได้initLoaderไหม ปลอดภัยไหมที่จะโทรinitLoaderสองครั้งเพื่อรีเฟรชข้อมูล ฉันควรใช้หนึ่งในสองเมื่อใดและเพราะเหตุใด

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