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

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

11
ตัวอย่างที่ดีของ Javadoc [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน3 ปีที่ผ่านมา ปรับปรุงคำถามนี้ มีตัวอย่างที่ดีของไฟล์ต้นฉบับที่มีJavadocหรือไม่ ฉันสามารถหาตัวอย่างที่ดีมากมายของ Javadoc บนอินเทอร์เน็ตฉันต้องการหาไวยากรณ์เฉพาะที่ใช้ในการสร้างพวกเขาและสมมติว่าฉันสามารถเจาะผ่านแหล่งที่มาของห้องสมุดบางแห่ง แต่ดูเหมือนว่างานมากมาย
140 java  javadoc 

11
วิธีการแปลง currentTimeMillis เป็นวันที่ใน Java?
ฉันมีมิลลิวินาทีในไฟล์บันทึกบางไฟล์ที่สร้างขึ้นในเซิร์ฟเวอร์ฉันรู้โลแคลจากที่ไฟล์บันทึกถูกสร้างขึ้นปัญหาของฉันคือการแปลงมิลลิวินาทีเป็นวันที่ในรูปแบบที่ระบุ การประมวลผลบันทึกนั้นเกิดขึ้นบนเซิร์ฟเวอร์ที่อยู่ในเขตเวลาที่แตกต่างกัน ในขณะที่กำลังแปลงเป็นโปรแกรม "SimpleDateFormat" กำลังรับวันที่ของเครื่องเนื่องจากวันที่จัดรูปแบบดังกล่าวไม่ได้แสดงเวลาที่ถูกต้องของเซิร์ฟเวอร์ มีวิธีจัดการกับสิ่งนี้อย่างสง่างามไหม? long yourmilliseconds = 1322018752992l; //1322018752992-Nov 22, 2011 9:25:52 PM SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss,SSS",Locale.US); GregorianCalendar calendar = new GregorianCalendar(TimeZone.getTimeZone("US/Central")); calendar.setTimeInMillis(yourmilliseconds); System.out.println("GregorianCalendar -"+sdf.format(calendar.getTime())); DateTime jodaTime = new DateTime(yourmilliseconds, DateTimeZone.forTimeZone(TimeZone.getTimeZone("US/Central"))); DateTimeFormatter parser1 = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss,SSS"); System.out.println("jodaTime "+parser1.print(jodaTime)); เอาท์พุท: Gregorian Calendar -2011-11-23 08:55:52,992 jodaTime 2011-11-22 21:25:52,992
140 java  date 

5
Java Virtual Machine และ CLR
ตามประเภทคำถามที่เรียกว่าความแตกต่างระหว่าง MSIL และ Java bytecode อะไรคือความแตกต่าง (หลัก) หรือความคล้ายคลึงกันในการทำงานของ Java Virtual Machine กับวิธีการ. NET Framework Common Language Runtime (CLR) ใช้งานได้? นอกจากนี้ยังเป็น กรอบงาน. NET CLR เป็น "เครื่องเสมือน" หรือไม่มีคุณลักษณะของเครื่องเสมือนหรือไม่

11
การทดสอบหน่วยด้วย Spring Security
บริษัท ของฉันกำลังประเมิน Spring MVC เพื่อพิจารณาว่าเราควรใช้ในโครงการต่อไปของเราหรือไม่ จนถึงตอนนี้ฉันชอบสิ่งที่ฉันเห็นและตอนนี้ฉันกำลังดูโมดูลความปลอดภัยของสปริงเพื่อตรวจสอบว่าเป็นสิ่งที่เราสามารถ / ควรใช้ ข้อกำหนดด้านความปลอดภัยของเราค่อนข้างพื้นฐาน ผู้ใช้เพียงแค่ต้องสามารถให้ชื่อผู้ใช้และรหัสผ่านเพื่อให้สามารถเข้าถึงบางส่วนของเว็บไซต์ (เช่นเพื่อรับข้อมูลเกี่ยวกับบัญชีของพวกเขา); และมีหน้าเว็บจำนวนหนึ่งบนไซต์ (คำถามที่พบบ่อยการสนับสนุน ฯลฯ ) ซึ่งผู้ใช้ที่ไม่ระบุชื่อควรได้รับสิทธิ์เข้าถึง ในต้นแบบที่ฉันสร้างฉันได้จัดเก็บวัตถุ "LoginCredentials" (ซึ่งเพิ่งมีชื่อผู้ใช้และรหัสผ่าน) ในเซสชันสำหรับผู้ใช้ที่ได้รับการรับรองความถูกต้อง คอนโทรลเลอร์บางตัวตรวจสอบว่าวัตถุนี้อยู่ในเซสชันเพื่อรับการอ้างอิงถึงชื่อผู้ใช้ที่เข้าสู่ระบบหรือไม่ ฉันต้องการแทนที่ตรรกะที่พัฒนาขึ้นเองด้วย Spring Security แทนซึ่งจะมีประโยชน์อย่างมากในการลบ "เราจะติดตามผู้ใช้ที่เข้าสู่ระบบได้อย่างไร" และ "เราจะตรวจสอบผู้ใช้อย่างไร" จากตัวควบคุม / รหัสธุรกิจของฉัน ดูเหมือนว่า Spring Security จะมีวัตถุ "บริบท" เพื่อให้สามารถเข้าถึงชื่อผู้ใช้ / ข้อมูลหลักจากที่ใดก็ได้ในแอปของคุณ ... Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal(); ... ซึ่งดูเหมือนว่าจะไม่มีสปริงเหมือนวัตถุนี้เป็นซิงเกิล (ทั่วโลก) ในทางใดทางหนึ่ง คำถามของฉันคือ: หากนี่เป็นวิธีมาตรฐานในการเข้าถึงข้อมูลเกี่ยวกับผู้ใช้ที่ได้รับการรับรองความถูกต้องใน …

8
เหตุใดจึงไม่มีคุณสมบัติคงที่ใน Java
ฉันพยายามระบุเหตุผลของค่าคงที่ใน Java ฉันได้เรียนรู้ว่า Java ช่วยให้เราประกาศค่าคงที่โดยใช้finalคำหลัก คำถามของฉันคือทำไม Java ไม่แนะนำคุณลักษณะคงที่ ( const) เนื่องจากหลายคนบอกว่ามาจาก C ++ ใน C ++ เรามีconstคำหลัก กรุณาแบ่งปันความคิดของคุณ
140 java  constants  final 

20
ความหมายของ“ สิ่งนี้” ใน Java คืออะไร?
โดยปกติฉันใช้thisในตัวสร้างเท่านั้น ฉันเข้าใจว่าจะใช้เพื่อระบุตัวแปรพารามิเตอร์ (โดยใช้this.something) หากมีชื่อเดียวกันกับตัวแปรทั่วโลก อย่างไรก็ตามฉันไม่ทราบว่าความหมายที่แท้จริงของthisภาษาจาวาคืออะไรและจะเกิดอะไรขึ้นหากฉันใช้thisโดยไม่มีจุด ( .)
140 java 

15
Java: วิธีกำหนดการเข้ารหัส charset ที่ถูกต้องของสตรีม
โดยอ้างถึงเธรดต่อไปนี้: Java App: ไม่สามารถอ่านไฟล์ที่เข้ารหัส iso-8859-1 ได้อย่างถูกต้อง วิธีที่ดีที่สุดในการกำหนดการเข้ารหัสชุดอักขระของอินพุตสตรีม / ไฟล์โดยทางโปรแกรมคืออะไร ฉันได้ลองใช้สิ่งต่อไปนี้: File in = new File(args[0]); InputStreamReader r = new InputStreamReader(new FileInputStream(in)); System.out.println(r.getEncoding()); แต่ในไฟล์ที่ฉันรู้ว่าเข้ารหัสด้วย ISO8859_1 โค้ดข้างต้นให้ผลว่า ASCII ซึ่งไม่ถูกต้องและไม่อนุญาตให้ฉันแสดงผลเนื้อหาของไฟล์กลับไปที่คอนโซลอย่างถูกต้อง

2
BigDecimal setScale และ round
ความแตกต่างระหว่างการโทรสองครั้งนี้คืออะไร? (มีผู้ใด?) // 1. new BigDecimal("3.53456").round(new MathContext(4, RoundingMode.HALF_UP)); // 2. new BigDecimal("3.53456").setScale(4, RoundingMode.HALF_UP);
140 java  bigdecimal 

4
Java 8: ประสิทธิภาพของ Streams vs Collections
ฉันยังใหม่กับ Java 8 ฉันยังไม่รู้ API ในเชิงลึก แต่ฉันได้ทำเกณฑ์มาตรฐานอย่างไม่เป็นทางการเพื่อเปรียบเทียบประสิทธิภาพของ Streams API ใหม่กับคอลเลกชันเก่าที่ดี การทดสอบประกอบด้วยในการกรองรายการIntegerและจำนวนคู่แต่ละคำนวณรากและเก็บไว้ในผลของListDouble นี่คือรหัส: public static void main(String[] args) { //Calculating square root of even numbers from 1 to N int min = 1; int max = 1000000; List<Integer> sourceList = new ArrayList<>(); for (int i = min; i < max; i++) …

7
IntelliJ ไม่แสดง 'คลาส' เมื่อเราคลิกขวาและเลือก 'ใหม่'
เรากำลังสร้างโครงการใหม่ใน IntelliJ และต้องมีบางอย่างผิดปกติเพราะเมื่อเราคลิกขวาที่ไดเรกทอรีเลือกใหม่จากนั้นรับเมนูบริบทตัวเลือกที่ใช้ Java จะไม่แสดง ขณะนี้ได้รับสิ่งต่าง ๆ เช่นไฟล์ตัวเลือก HTML บางตัวเลือก XML เราสันนิษฐานว่าเป็นสิ่งที่เราไม่ได้กำหนดค่าอย่างถูกต้องในการกำหนดค่าโครงการ / โมดูล โมดูลใหม่ที่เรากำลังพูดถึงเป็นส่วนหนึ่งของโครงการหลายโมดูล เราสร้างมันขึ้นมาโดยใช้แม่แบบเว็บ Maven มีความช่วยเหลือในการกำหนดลักษณะโครงการหรือไม่? แก้ไข: คำตอบนั้นเป็นพื้นฐาน: 'ช่วงเวลานั้นเมื่อคุณตระหนักถึงบางสิ่งที่ไม่ได้ผลเพราะคุณไม่ได้คลิก' ใช้ '... :) เราหัวเราะด้วยตัวเองเมื่อเราค้นพบสิ่งนี้'

11
RecyclerView - รับมุมมองเฉพาะตำแหน่ง
ฉันมีกิจกรรมกับหนึ่งและRecyclerView ImageViewฉันใช้ปุ่มRecyclerViewเพื่อแสดงรายการภาพในแนวนอน เมื่อฉันคลิกบนภาพในนั้นในกิจกรรมที่ควรจะแสดงภาพขนาดใหญ่ของภาพ จนถึงทุกอย่างทำงานได้ดีRecyclerViewImageView ขณะนี้มีอีกสองImageButtonsกิจกรรม: และimageButton_left imageButton_rightเมื่อฉันคลิกimageButton_leftที่ภาพในImageViewควรเลี้ยวซ้ายและภาพขนาดย่อในRecyclerViewควรสะท้อนถึงการเปลี่ยนแปลงนี้ imageButton_rightที่คล้ายกันเป็นกรณีที่มี ImageViewฉันสามารถที่จะหมุน แต่ฉันจะหมุนรูปย่อในRecyclerView? ฉันจะรับViewHolderของได้ImageViewอย่างไร รหัส: กิจกรรม XML: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <android.support.v7.widget.RecyclerView android:id="@+id/recyclerview" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="10dp" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="10dp" android:orientation="vertical"> <ImageView android:id="@+id/original_image" android:layout_width="200dp" android:layout_height="200dp" android:scaleType="fitXY" android:src="@drawable/image_not_available_2" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_horizontal" android:orientation="horizontal"> <ImageButton android:id="@+id/imageButton_left" android:layout_width="wrap_content" …

9
วิธีการใช้คำอธิบายประกอบ @Nullable และ @Nonnull มีประสิทธิภาพมากขึ้นได้อย่างไร
ฉันเห็นว่าคำอธิบายประกอบ@Nullableและอาจมีประโยชน์ในการป้องกันs แต่พวกเขาไม่เผยแพร่ไกลมาก@NonnullNullPointerException ประสิทธิผลของการเพิ่มความคิดเห็นเหล่านี้จะลดลงอย่างสมบูรณ์หลังจากผ่านไปหนึ่งระดับทางอ้อมดังนั้นหากคุณเพิ่มเพียงไม่กี่อย่างพวกเขาก็จะไม่เผยแพร่ไกลมากนัก เนื่องจากคำอธิบายประกอบเหล่านี้ไม่ได้บังคับใช้อย่างดีมีความเสี่ยงที่จะถือว่าค่าที่ทำเครื่องหมายด้วย@Nonnullนั้นไม่เป็นโมฆะดังนั้นจึงไม่สามารถทำการตรวจสอบโมฆะได้ โค้ดข้างล่างนี้เป็นสาเหตุของพารามิเตอร์ที่มีเครื่องหมาย@Nonnullที่จะเป็นnullโดยไม่ต้องเพิ่มข้อร้องเรียนใด ๆ มันจะพ่นNullPointerExceptionเมื่อมันถูกเรียกใช้ public class Clazz { public static void main(String[] args){ Clazz clazz = new Clazz(); // this line raises a complaint with the IDE (IntelliJ 11) clazz.directPathToA(null); // this line does not clazz.indirectPathToA(null); } public void indirectPathToA(Integer y){ directPathToA(y); } public void directPathToA(@Nonnull Integer …

21
การทำซ้ำครั้งล่าสุดของ Enhanced for loop ใน java
มีวิธีการตรวจสอบว่าการวนซ้ำเป็นครั้งสุดท้ายหรือไม่ รหัสของฉันมีลักษณะดังนี้: int[] array = {1, 2, 3...}; StringBuilder builder = new StringBuilder(); for(int i : array) { builder.append("" + i); if(!lastiteration) builder.append(","); } ตอนนี้สิ่งที่ฉันไม่ต้องการที่จะผนวกเครื่องหมายจุลภาคในการทำซ้ำครั้งล่าสุด ขณะนี้มีวิธีการตรวจสอบว่าเป็นซ้ำล่าสุดหรือฉันติดกับห่วงหรือใช้ตัวนับภายนอกเพื่อติดตาม

30
java.lang.ClassNotFoundException: ไม่พบคลาสบนเส้นทาง: dexpathlist
ขณะนี้ฉันกำลังทำงานในโครงการที่ฉันต้องใช้ ndk ดั้งเดิม มันทำงานได้เมื่อฉันลองใช้ตัวอย่าง helloworld จากแหล่งเครื่องยนต์ของ Irrlicht จากนั้นฉันลองใช้มันในโครงการของฉันตามรูปแบบเดียวกันของตัวอย่างนั้น แต่ฉันได้: 03-14 01:40:05.308: E/AndroidRuntime(799): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.irrlicht.example1/android.app.POMActivity}: java.lang.ClassNotFoundException: Didn't find class "android.app.POMActivity" on path: DexPathList[[zip file "/data/app/com.irrlicht.example1-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.irrlicht.example1-2, /system/lib]] ในขณะที่เรียกใช้โครงการของฉัน นี่คือไฟล์ main.cpp ของฉัน: #include <android/log.h> #include <jni.h> #include <android_native_app_glue.h> #include "android_tools.h" #ifdef _IRR_ANDROID_PLATFORM_ void android_main(android_app* app) { __android_log_print(4 , "pom" …
140 java  android  c++  android-ndk 

7
ใน Java 8 ฉันจะแปลง Map <K, V> เป็น Map <K, V> อื่นโดยใช้แลมบ์ดาได้อย่างไร?
ฉันเพิ่งเริ่มดู Java 8 และลอง lambdas ฉันคิดว่าฉันพยายามที่จะเขียนสิ่งที่ง่ายมากที่ฉันเขียนเมื่อเร็ว ๆ นี้ ฉันต้องเปลี่ยน Map of String to Column เป็น Map อื่นของ String to Column โดยที่ Column ใน Map ใหม่นั้นเป็นการป้องกันสำเนาของ Column ใน Map แรก คอลัมน์มีตัวสร้างสำเนา สิ่งที่ฉันได้ใกล้เคียงที่สุดคือ: Map&lt;String, Column&gt; newColumnMap= new HashMap&lt;&gt;(); originalColumnMap.entrySet().stream().forEach(x -&gt; newColumnMap.put(x.getKey(), new Column(x.getValue()))); แต่ฉันแน่ใจว่าต้องมีวิธีที่ดีกว่าในการทำและฉันจะขอบคุณสำหรับคำแนะนำบางอย่าง
140 java  map  lambda  java-8  java-stream 

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