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

ไวยากรณ์หมายถึงองค์ประกอบภาษาจริงและสัญลักษณ์เอง ควรติดแท็กคำถามเป็นไวยากรณ์เมื่อคำถามเฉพาะและเกี่ยวข้องเกือบทั้งหมดกับไวยากรณ์เพียงอย่างเดียว แท็กนี้ควรใช้กับแท็กภาษาเฉพาะ

14
เหตุใดคำสั่งมอบหมายจึงส่งคืนค่า
สิ่งนี้ได้รับอนุญาต: int a, b, c; a = b = c = 16; string s = null; while ((s = "Hello") != null) ; ตามความเข้าใจของฉันการมอบหมายs = ”Hello”;ควรทำให้“Hello”ถูกมอบหมายให้sเท่านั้น แต่การดำเนินการไม่ควรส่งคืนค่าใด ๆ ถ้าเป็นจริงก็((s = "Hello") != null)จะเกิดข้อผิดพลาดเนื่องจากnullจะเปรียบเทียบกับอะไร อะไรคือเหตุผลเบื้องหลังการอนุญาตให้คำสั่งมอบหมายส่งคืนค่า
127 c#  syntax 

4
เครื่องหมายทิลเดอร์ในวงเล็บเหลี่ยมหมายถึงอะไรเมื่อสร้างคลาสทั่วไปของ Java
ฉันกำลังอ่านตัวอย่าง JMockit และพบรหัสนี้: final List<OrderItem> actualItems = new ArrayList<~>(); เครื่องหมายทิลเดอร์ในตัวระบุทั่วไปหมายถึงอะไร ฉันรู้ว่ามันเป็นโอเปอเรเตอร์ NOT แบบ unary bit แต่ไม่เห็นตัวถูกดำเนินการที่นี่ นอกจากนี้ฉันพยายามรวบรวมและพบข้อผิดพลาด ฉันขาดอะไรไปหรือเปล่า?

14
การใช้อัญประกาศเดี่ยวเทียบกับอัญประกาศคู่ในทับทิมมีประสิทธิภาพเพิ่มขึ้นหรือไม่?
คุณรู้หรือไม่ว่าการใช้อัญประกาศคู่แทนอัญประกาศเดี่ยวในทับทิมจะทำให้ประสิทธิภาพการทำงานลดลงอย่างมีความหมายในทับทิม 1.8 และ 1.9 ดังนั้นถ้าฉันพิมพ์ question = 'my question' เร็วกว่า question = "my question" ฉันจินตนาการว่าทับทิมพยายามคิดว่าจะต้องมีการประเมินอะไรบางอย่างเมื่อพบเครื่องหมายอัญประกาศคู่และอาจใช้เวลาในการทำเช่นนั้น
126 ruby  performance  syntax 

12
จะเปลี่ยนค่า Hash ได้อย่างไร?
ฉันต้องการที่จะใช้แทนกันได้ในกัญชาด้วยvaluevalue.some_method ตัวอย่างเช่นสำหรับแฮชธรรมดา: {"a" => "b", "c" => "d"}` ทุกค่าควรเป็น.upcased ดังนั้นจึงดูเหมือนว่า: {"a" => "B", "c" => "D"} ฉันพยายาม#collectและ#mapได้รับอาร์เรย์กลับมาเสมอ มีวิธีที่สวยงามในการทำเช่นนี้หรือไม่? UPDATE ฉันลืมไปแล้ว: แฮชอยู่ในตัวแปรอินสแตนซ์ซึ่งไม่ควรเปลี่ยนแปลง ฉันต้องการแฮชใหม่ที่มีค่าที่เปลี่ยนแปลง แต่ไม่ต้องการกำหนดตัวแปรนั้นอย่างชัดเจนแล้ววนซ้ำในการเติมแฮช สิ่งที่ต้องการ: new_hash = hash.magic{ ... }
126 ruby  syntax  hash 


11
การใส่คำสั่ง if-elif-else ในบรรทัดเดียว?
ฉันได้อ่านลิงก์ด้านล่าง แต่ไม่สามารถตอบคำถามของฉันได้ Python มีตัวดำเนินการที่มีเงื่อนไขแบบ ternary หรือไม่ (คำถามเกี่ยวกับการควบแน่นคำสั่ง if-else เป็นบรรทัดเดียว) มีวิธีที่ง่ายกว่าในการเขียนคำสั่ง if-elif-else เพื่อให้พอดีกับบรรทัดเดียวหรือไม่? ตัวอย่างเช่น, if expression1: statement1 elif expression2: statement2 else: statement3 หรือตัวอย่างในโลกแห่งความเป็นจริง: if i > 100: x = 2 elif i < 100: x = 1 else: x = 0 ฉันแค่รู้สึกว่าถ้าตัวอย่างข้างต้นสามารถเขียนได้ด้วยวิธีต่อไปนี้มันจะดูกระชับมากขึ้น x=2 if i>100 elif i<100 1 else 0 [WRONG]

13
คุณสามารถเพิ่มคำสั่งใหม่ให้กับไวยากรณ์ของ Python ได้หรือไม่?
คุณสามารถเพิ่มงบใหม่ (เช่นprint, raise, with) ไวยากรณ์งูใหญ่? บอกว่ายอม .. mystatement "Something" หรือ, new_if True: print "example" ไม่มากถ้าคุณควรแต่ถ้าเป็นไปได้ (ย่อมาจากการแก้ไขโค้ดล่าม python)

5
มีความแตกต่างระหว่างสัญกรณ์แฮช ": key =>" value "และ" key: "value" หรือไม่
มีความแตกต่างระหว่างสัญกรณ์:key => "value"(hashrocket) และkey: "value"(Ruby 1.9) หรือไม่? ถ้าไม่เช่นนั้นฉันต้องการใช้key: "value"สัญกรณ์ มีอัญมณีที่ช่วยให้ผมที่จะแปลงจาก:x =>การx:จด?

6
เป็นไปได้ไหมที่จะสร้างคลาสภายในแบบไม่ระบุชื่อใน Java Static
ใน Java คลาสที่ซ้อนกันสามารถเป็นstaticหรือไม่ก็ได้ หากเป็นstaticเช่นนั้นจะไม่มีการอ้างอิงถึงตัวชี้ของอินสแตนซ์ที่มีอยู่ (ยังไม่เรียกว่าคลาสภายในอีกต่อไปเรียกว่าคลาสที่ซ้อนกัน) การลืมสร้างคลาสที่ซ้อนกันstaticเมื่อไม่ต้องการการอ้างอิงนั้นอาจทำให้เกิดปัญหากับการรวบรวมขยะหรือการวิเคราะห์การหลบหนี เป็นไปได้ไหมที่จะสร้างคลาสภายในที่ไม่ระบุตัวตนstaticด้วย หรือคอมไพเลอร์คิดออกโดยอัตโนมัติ (ซึ่งทำได้เพราะไม่มีคลาสย่อยใด ๆ )? ตัวอย่างเช่นหากฉันทำการเปรียบเทียบแบบไม่ระบุตัวตนฉันแทบไม่ต้องการการอ้างอิงถึงภายนอกเลย: Collections.sort(list, new Comparator<String>(){ int compare(String a, String b){ return a.toUpperCase().compareTo(b.toUpperCase()); } }

7
Swift make method พารามิเตอร์ไม่แน่นอน?
ฉันจะจัดการกับข้อผิดพลาดนี้โดยไม่ต้องสร้างตัวแปรเพิ่มเติมได้อย่างไร func reduceToZero(x:Int) -> Int { while (x != 0) { x = x-1 // ERROR: cannot assign to 'let' value 'x' } return x } ฉันไม่ต้องการสร้างตัวแปรเพิ่มเติมเพื่อเก็บค่าของ x เป็นไปได้ไหมที่จะทำในสิ่งที่ฉันต้องการ?

8
มีความคิดอย่างไรว่าทำไมฉันต้องใส่ลิเทอรัลจำนวนเต็มเป็น (int) ที่นี่
ในตัวอย่างต่อไปนี้ int i = -128; Integer i2 = (Integer) i; // compiles Integer i3 = (Integer) -128; /*** Doesn't compile ***/ Integer i4 = (Integer) (int) -128; // compiles Integer i4 = -128; // compiles Integer i5 = (int) -128; // compiles Integer i6 = (Integer) (-128); // compiles Integer …
122 java  syntax  casting 

6
เชื่อมต่อตัวอักษรสตริงสองตัว
ฉันกำลังอ่าน Accelerated C ++ โดย Koenig เขาเขียนว่า "แนวคิดใหม่คือเราสามารถใช้ + เพื่อเชื่อมสตริงและสตริงลิเทอรัล - หรือสำหรับสสารนั้นสองสตริง (แต่ไม่ใช่สองสตริงลิเทอรัล) ดีนี่ก็สมเหตุสมผลแล้วที่ฉันคิดว่า ตอนนี้เป็นแบบฝึกหัดสองแบบแยกกันเพื่อให้ความสว่างนี้ คำจำกัดความต่อไปนี้ถูกต้องหรือไม่? const string hello = "Hello"; const string message = hello + ",world" + "!"; ตอนนี้ฉันพยายามดำเนินการข้างต้นแล้วและได้ผล! ฉันก็เลยมีความสุข จากนั้นฉันก็พยายามทำแบบฝึกหัดต่อไป const string exclam = "!"; const string message = "Hello" + ",world" + exclam; สิ่งนี้ไม่ได้ผล ตอนนี้ฉันเข้าใจแล้วว่ามีบางอย่างที่เกี่ยวข้องกับการที่คุณไม่สามารถเชื่อมต่อตัวอักษรสองสตริงได้ แต่ฉันไม่เข้าใจความแตกต่างทางความหมายระหว่างสาเหตุที่ฉันจัดการให้ตัวอย่างแรกทำงานได้ …


10
กฎไวยากรณ์สำหรับการมีเครื่องหมายจุลภาคต่อท้ายในคำจำกัดความทูเพิลคืออะไร?
ในกรณีของทูเปิลองค์ประกอบเดียวจำเป็นต้องใช้เครื่องหมายจุลภาคต่อท้าย a = ('foo',) สิ่งที่เกี่ยวกับทูเปิลที่มีหลายองค์ประกอบ? ดูเหมือนว่าไม่ว่าจะมีเครื่องหมายจุลภาคต่อท้ายหรือไม่ทั้งคู่ก็ใช้ได้ ถูกต้องหรือไม่ การมีเครื่องหมายจุลภาคต่อท้ายนั้นง่ายกว่าสำหรับการแก้ไขในความคิดของฉัน เป็นรูปแบบการเข้ารหัสที่ไม่ดีหรือไม่? a = ('foo1', 'foo2') b = ('foo1', 'foo2',)
121 python  syntax  tuples 

8
# นำเข้าโดยใช้วงเล็บมุม <> และเครื่องหมายคำพูด“”
ฉันสงสัยว่าอะไรเป็นตัวตัดสินว่าคุณได้รับอนุญาตให้ใช้&lt;Header.h&gt;หรือ"Header.h"เมื่อคุณนำเข้าไฟล์ใน Objective-C จนถึงตอนนี้ข้อสังเกตของฉันคือคุณใช้เครื่องหมายคำพูด""สำหรับไฟล์ในโครงการของคุณที่คุณมีแหล่งที่มาของการนำไปใช้และวงเล็บเหลี่ยม&lt;&gt;เมื่อคุณอ้างอิงไลบรารีหรือเฟรมเวิร์ก แต่มันทำงานอย่างไร? ฉันต้องทำอย่างไรเพื่อให้ชั้นเรียนของตัวเองใช้วงเล็บได้ ตอนนี้ Xcode ไม่อนุญาตให้ฉันทำสิ่งนั้นกับส่วนหัวของตัวเอง &lt;frameworkname/file.h&gt;นอกจากนี้โดยมองในบางส่วนหัวกรอบผมเห็นว่าส่วนหัวอ้างอิงกันและกันด้วย อย่างไรที่ทำงานหรือไม่ ดูเหมือนแพ็คเกจใน Java แต่เท่าที่ฉันรู้ไม่มีสิ่งที่เรียกว่าแพ็คเกจใน Objective-C

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