การเขียนโปรแกรม

คำถาม & คำตอบสำหรับโปรแกรมเมอร์มืออาชีพและกระตือรือร้น

20
แยกสตริง Java ตามบรรทัดใหม่
ฉันพยายามแยกข้อความในการJTextAreaใช้ regex เพื่อแยกสตริงโดย\nอย่างไรก็ตามสิ่งนี้ไม่ทำงานและฉันก็ลองด้วย\r\n|\r|nและการรวมกันของ regexes อื่น ๆ รหัส: public void insertUpdate(DocumentEvent e) { String split[], docStr = null; Document textAreaDoc = (Document)e.getDocument(); try { docStr = textAreaDoc.getText(textAreaDoc.getStartPosition().getOffset(), textAreaDoc.getEndPosition().getOffset()); } catch (BadLocationException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } split = docStr.split("\\n"); }
389 java  regex  split  newline 

10
พริตตี้คอนเทนเนอร์ C ++ STL แบบสวย
โปรดรับทราบการปรับปรุงในตอนท้ายของโพสต์นี้ อัปเดต: ฉันได้สร้างโครงการสาธารณะบน GitHubสำหรับห้องสมุดนี้แล้ว! ผมอยากจะมีแม่แบบเดียวที่และทุกครั้งจะดูแลสวยพิมพ์ภาชนะ STL operator<<ทั้งหมดผ่าน ในรหัสหลอกฉันกำลังมองหาสิ่งนี้: template<container C, class T, String delim = ", ", String open = "[", String close = "]"> std::ostream & operator<<(std::ostream & o, const C<T> & x) { o << open; // for (typename C::const_iterator i = x.begin(); i != x.end(); i++) /* …

12
จะตอบกลับด้วยข้อผิดพลาด HTTP 400 ในวิธี Spring MVC @ResponseBody ที่ส่งคืนสตริงได้อย่างไร
ฉันกำลังใช้ Spring MVC สำหรับ JSON API อย่างง่ายด้วย@ResponseBodyวิธีการที่ใช้เป็นพื้นฐานดังต่อไปนี้ (ฉันมีชั้นบริการที่ผลิต JSON โดยตรง) @RequestMapping(value = "/matches/{matchId}", produces = "application/json") @ResponseBody public String match(@PathVariable String matchId) { String json = matchService.getMatchJson(matchId); if (json == null) { // TODO: how to respond with e.g. 400 "bad request"? } return json; } คำถามคือในสถานการณ์ที่กำหนดวิธีที่ง่ายที่สุดและสะอาดที่สุดในการตอบสนองกับข้อผิดพลาด HTTP 400คืออะไร ฉันเจอวิธีเช่น: …

19
อะไรคือความแตกต่างระหว่างความสัมพันธ์การรวมตัวและการแต่งเพลง?
อะไรคือความแตกต่างระหว่างความสัมพันธ์การรวมตัวและการแต่งเพลง? โปรดอธิบายในแง่ของการใช้งาน

20
ทำไมไม่มีวิธีการขยาย ForEach ใน IEnumerable?
แรงบันดาลใจจากคำถามอื่นที่ถามเกี่ยวกับZipฟังก์ชั่นที่หายไป: เหตุใดจึงไม่มีForEachวิธีการขยายในEnumerableชั้นเรียน หรือที่ไหนก็ได้? ชั้นเดียวที่ได้รับวิธีการคือForEach List<>มีเหตุผลว่าทำไมมันหายไป (การแสดง)?

6
JavaScript: location.href เพื่อเปิดในหน้าต่าง / แท็บใหม่
ฉันมีไฟล์ JavaScript จากนักพัฒนาบุคคลที่สาม มันมีลิงค์ที่จะแทนที่หน้าปัจจุบันกับเป้าหมาย ฉันต้องการให้เปิดหน้านี้ในแท็บใหม่ นี่คือสิ่งที่ฉันมี: if (command == 'lightbox') { location.href="https://support.wwf.org.uk/earth_hour/index.php?type=individual"; } ใครช่วยฉันออกได้บ้าง
389 javascript 

12
Git: ดูความมุ่งมั่นล่าสุดของฉัน
git commitผมแค่อยากจะเห็นไฟล์ที่มีความมุ่งมั่นในช่วงกระทำตรงตามที่ผมเห็นรายการเมื่อฉันได้ น่าเสียดายที่การค้นหา git "last commit" log ใน Google ทำให้ฉันไม่มีที่ไหนเลย และ git diff HEAD^..HEAD ไม่ใช่สิ่งที่ฉันต้องการแน่นอนเพราะมันพ่นความกล้าของการเปลี่ยนแปลงเช่นกัน
389 git 

30
UIView ที่มีมุมมนและเงาตกใช่ไหม
ฉันต้องการกำหนดเองUIView... : ฉันแค่อยากได้มุมมองสีขาวที่ว่างเปล่าที่มีมุมมนและเงาแบบปล่อยแสง (ไม่มีเอฟเฟกต์แสง) ฉันสามารถทำสิ่งเหล่านี้ทีละคน แต่ปกติclipToBounds/ maskToBoundsความขัดแย้งเกิดขึ้น

14
ไม่สามารถสร้างเอนทิตีได้ในการสืบค้น LINQ to Entities
มีชนิดเอนทิตีที่เรียกว่าผลิตภัณฑ์ที่สร้างขึ้นโดยกรอบงานเอนทิตี ฉันเขียนแบบสอบถามนี้ public IQueryable<Product> GetProducts(int categoryID) { return from p in db.Products where p.CategoryID== categoryID select new Product { Name = p.Name}; } รหัสด้านล่างพ่นข้อผิดพลาดต่อไปนี้: "เอนทิตีหรือร้านค้าประเภทที่ซับซ้อนไม่สามารถสร้างสินค้าในแบบสอบถาม LINQ ไปยังเอนทิตี" var products = productRepository.GetProducts(1).Tolist(); แต่เมื่อฉันใช้select pแทนselect new Product { Name = p.Name};มันทำงานได้อย่างถูกต้อง ฉันจะ preform ส่วนเลือกที่กำหนดเองได้อย่างไร

8
“ SyntaxError: การขาดวงเล็บในการเรียกเพื่อ 'พิมพ์'” หมายถึงอะไรใน Python
เมื่อฉันพยายามที่จะใช้printคำสั่งใน Python มันทำให้ฉันมีข้อผิดพลาดนี้: >>> print "Hello, World!" File "<stdin>", line 1 print "Hello, World!" ^ SyntaxError: Missing parentheses in call to 'print' นั่นหมายความว่าอย่างไร?
389 python  python-3.x 


26
ตรวจสอบว่าองค์ประกอบทั้งหมดในรายการเหมือนกันหรือไม่
ฉันต้องการฟังก์ชั่นต่อไปนี้: อินพุต :list ผลผลิต : True หากองค์ประกอบทั้งหมดในรายการอินพุตประเมินผลเท่ากันโดยใช้ตัวดำเนินการความเสมอภาคมาตรฐาน False มิฉะนั้น. ประสิทธิภาพ : แน่นอนฉันไม่ต้องการให้เกิดค่าใช้จ่ายที่ไม่จำเป็น ฉันรู้สึกว่ามันจะดีที่สุด: วนซ้ำตามรายการ เปรียบเทียบองค์ประกอบที่อยู่ติดกัน และANDค่าบูลีนผลลัพธ์ทั้งหมด แต่ฉันไม่แน่ใจว่าเป็นวิธีที่ Pythonic ที่สุดที่จะทำ การขาดคุณสมบัติลัดวงจรเพียงเจ็บอินพุตยาว (มากกว่า ~ 50 องค์ประกอบ) ที่มีองค์ประกอบที่ไม่เท่ากันในช่วงต้น หากสิ่งนี้เกิดขึ้นบ่อยครั้งเพียงพอ (ความถี่ขึ้นอยู่กับจำนวนรายการที่อาจจะเกิดขึ้น) จำเป็นต้องใช้ไฟฟ้าลัดวงจร ขั้นตอนวิธีการลัดวงจรที่ดีที่สุดน่าจะเป็น checkEqual1@KennyTM อย่างไรก็ตามมันจ่ายค่าใช้จ่ายที่สำคัญสำหรับสิ่งนี้: มากถึง 20x ในรายการที่เกือบเหมือนประสิทธิภาพ ประสิทธิภาพสูงสุด 2.5x สำหรับรายการสั้น ๆ หากอินพุตยาวที่มีองค์ประกอบไม่เท่ากันต้นไม่เกิดขึ้น (หรือเกิดขึ้นน้อยมาก) ไม่จำเป็นต้องใช้ไฟฟ้าลัดวงจร จากนั้นที่เร็วที่สุดคือโซลูชันของ @Ivo van der Wijk

4
ยกเลิกการคอมไพล์เชอร์รี่เลือกหรือไม่
ฉันวิ่งgit cherry-pick <hash>และมีการรวมความขัดแย้ง ฉันไม่ต้องการแก้ไขข้อขัดแย้งฉันแค่ต้องการยกเลิกการคัดเชอร์รี่ เมื่อทำผสานจริง (กับgit merge) git merge --abortมีประโยชน์ อะไรที่เทียบเท่ากับการเก็บเชอร์รี่?

2
วิธีดูโครงสร้างแพ็กเกจแบบลำดับชั้นใน Eclipse package explorer
ตกลงนี่คือสิ่งที่ฉันต้องการ: ใน Eclipse package explorer ฉันเห็นสิ่งต่อไปนี้: (จุดแทนลูกศรแบบคลิกได้ที่ฉันสามารถใช้เพื่อขยายโฟลเดอร์) โครงการ โฟลเดอร์ต้นทาง บรรจุภัณฑ์ ชั้น Package.SubPackageฟูบาร์Package.OtherSubPackagePackage.OtherSubPackage.VerySubPackage OtherPackage foobar OtherPackage.SubPackage Baz เรื่องสั้นสั้นฉันต้องการมีหลายแพคเกจแต่ละอันมี subpackages จำนวนมากในโฟลเดอร์ต้นทาง (และหลายโฟลเดอร์ซอร์สดังนั้นการสร้างเพิ่มเติมจะไม่สามารถแก้ปัญหาได้) - ดังนั้นตามคำสั่งของสองร้อยแพ็คเกจต่อโฟลเดอร์ต้นทาง - ถึงยี่สิบแพคเกจแต่ละคนมีสิบห้า subpackages ดังนั้นฉันต้องการลำดับชั้นให้มีลักษณะเช่นนี้: โครงการ โฟลเดอร์ต้นทาง บรรจุภัณฑ์ ชั้น Package.SubPackage ฟู บาร์Package.OtherSubPackagePackage.OtherSubPackage.VerySubPackage OtherPackage foobar OtherPackage.SubPackage Baz ดังนั้นฉันสามารถเปิดหรือปิดแพ็คเกจและดูรายการแพ็คเกจย่อยแทนที่จะมีแพ็คเกจและแพ็คเกจย่อยทั้งหมดในระดับเดียวกันในลำดับชั้น - ซึ่งทำให้แพคเกจจำนวนมากเกินไปปรากฏขึ้นพร้อมกันอีกครั้ง หมายเหตุนี่ไม่ใช่คำถามเกี่ยวกับระบบไฟล์ ระบบไฟล์ทำงานได้ดีเท่าที่ฉันสามารถบอกได้ - เป็นเพียงคำถามเกี่ยวกับการแสดงผลภาพใน Eclipse package explorer ดังนั้น: มีวิธีเพิ่มระดับให้กับลำดับชั้นหรือไม่ ขอบคุณ …

10
ทำไมฟังก์ชั่นที่ไม่มีพารามิเตอร์ (เมื่อเปรียบเทียบกับนิยามของฟังก์ชันจริง) คอมไพล์?
ฉันเพิ่งเจอรหัส C ของใครบางคนที่ฉันสับสนว่าทำไมมันถึงรวบรวม มีสองประเด็นที่ฉันไม่เข้าใจ ก่อนอื่นฟังก์ชั่นต้นแบบนั้นไม่มีพารามิเตอร์เทียบกับนิยามฟังก์ชันจริง ประการที่สองพารามิเตอร์ในการกำหนดฟังก์ชั่นไม่ได้มีประเภท #include <stdio.h> int func(); int func(param) { return param; } int main() { int bla = func(10); printf("%d", bla); } ทำไมจึงใช้งานได้ ฉันได้ทดสอบมันในคอมไพเลอร์สองสามอันและมันใช้งานได้ดี

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