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

Scala เป็นภาษาการเขียนโปรแกรมที่ใช้งานทั่วไปโดยมีเป้าหมายหลักที่ Java Virtual Machine ออกแบบมาเพื่อแสดงรูปแบบการเขียนโปรแกรมทั่วไปในรูปแบบที่กระชับสง่างามและปลอดภัยในการใช้งาน คุณสมบัติที่สำคัญของมันคือ: ระบบประเภทคงที่ขั้นสูงที่มีการอนุมานประเภท; ประเภทฟังก์ชั่น รูปแบบจับคู่; พารามิเตอร์และการแปลงโดยนัย ผู้ประกอบการมากไป; การทำงานร่วมกันอย่างสมบูรณ์กับ Java; เห็นพ้องด้วย

1
Scala: เข้าร่วมสตริงที่ซ้ำได้
ฉันจะ "เข้าร่วม" สตริงที่ซ้ำได้ในสตริงสกาล่าได้อย่างไร val thestrings = Array("a","b","c") val joined = ??? println(joined) ฉันต้องการรหัสนี้เพื่อส่งออกa,b,c(เข้าร่วมองค์ประกอบโดย ",")
262 string  scala 

9
Scala Programming สำหรับ Android
ฉันได้ติดตามการสอนที่Scala และ Androidด้วยScala 2.7.3ขั้นสุดท้าย แอพ Android ที่เกิดขึ้นใช้งานได้แม้กระทั่งแอพพลิเคชั่นพื้นฐานส่วนใหญ่ใช้เวลาหลายนาทีในการรวบรวมและต้องการบีบอัด900 kbซึ่งเป็นตัวหยุดการแสดงสำหรับแอปพลิเคชันมือถือ นอกจากนี้ IDE มีหน่วยความจำไม่เพียงพอทุกขณะ ผมถือว่าไม่ได้ทำสำหรับห้องสมุดขนาดใหญ่เช่นdexscala-library ดังนั้นคำถามของฉันคือ: มีใครทำสิ่งนี้จริง ๆ และมีวิธีแก้ไหม?
258 android  scala  resources 

9
ความแตกต่างระหว่างวิธีการและฟังก์ชั่นใน Scala
ฉันอ่านฟังก์ชั่นสกาล่า (เป็นส่วนหนึ่งของทัวร์สกาล่าอีกครั้ง ) ในโพสต์ที่เขาระบุว่า: วิธีการและฟังก์ชั่นไม่เหมือนกัน แต่เขาไม่ได้อธิบายอะไรเกี่ยวกับมัน เขากำลังพยายามจะพูดอะไร
254 function  scala  methods 

4
"การยก" ใน Scala คืออะไร
บางครั้งเมื่อฉันอ่านบทความในระบบนิเวศสกาล่าฉันอ่านคำว่า "การยก" / "ยกขึ้น" น่าเสียดายที่มันไม่ได้อธิบายว่ามันหมายถึงอะไรกันแน่ ฉันได้ทำการวิจัยและดูเหมือนว่าการยกมีบางอย่างเกี่ยวกับค่านิยมในการใช้งานหรืออะไรทำนองนั้น แต่ฉันไม่สามารถหาข้อความที่อธิบายว่าการยกกำลังนั้นเกี่ยวข้องกับการเริ่มต้นที่เป็นมิตร มีความสับสนเพิ่มเติมผ่านเฟรมเวิร์กLiftซึ่งยกชื่อขึ้นมา แต่มันก็ไม่ได้ช่วยตอบคำถาม "การยก" ใน Scala คืออะไร

4
Scala: บทคัดย่อประเภทเทียบกับยาชื่อสามัญ
ผมอ่านทัวร์ของ Scala: นามธรรมประเภท เมื่อใดควรใช้ประเภทนามธรรม ตัวอย่างเช่น, abstract class Buffer { type T val element: T } ค่อนข้างทั่วไปเช่นนั้น abstract class Buffer[T] { val element: T }

7
วาลขี้เกียจทำอะไร?
ผมสังเกตเห็นว่า Scala lazy valsให้ แต่ฉันไม่ได้สิ่งที่พวกเขาทำ scala> val x = 15 x: Int = 15 scala> lazy val y = 13 y: Int = <lazy> scala> x res0: Int = 15 scala> y res1: Int = 13 REPLแสดงให้เห็นว่าyเป็นlazy valแต่วิธีการมันจะแตกต่างจากปกติval?

16
โทรตามชื่อเทียบกับการโทรตามมูลค่าใน Scala ต้องการการชี้แจง
ตามที่ฉันเข้าใจใน Scala ฟังก์ชันอาจถูกเรียกใช้เช่นกัน โดยค่าหรือ โดยชื่อ ตัวอย่างเช่นจากการประกาศดังต่อไปนี้เรารู้หรือไม่ว่าฟังก์ชันจะถูกเรียกใช้อย่างไร? ประกาศ: def f (x:Int, y:Int) = x; โทร f (1,2) f (23+55,5) f (12+3, 44*11) มีกฎอะไรบ้าง?
239 scala 

26
วิธีที่ดีที่สุดในการแยกพารามิเตอร์บรรทัดคำสั่ง? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา ปรับปรุงคำถามนี้ วิธีที่ดีที่สุดในการวิเคราะห์พารามิเตอร์บรรทัดคำสั่งใน Scala คืออะไร โดยส่วนตัวแล้วฉันชอบบางสิ่งที่มีน้ำหนักเบาที่ไม่ต้องการขวดภายนอก ที่เกี่ยวข้อง: ฉันจะแยกอาร์กิวเมนต์บรรทัดคำสั่งใน Java ได้อย่างไร ไลบรารี parser พารามิเตอร์ใดที่มีสำหรับ C ++ วิธีที่ดีที่สุดในการแยกอาร์กิวเมนต์บรรทัดคำสั่งใน C #

14
วัตถุเคสเทียบกับการแจกแจงใน Scala
มีแนวทางปฏิบัติที่ดีที่สุดเกี่ยวกับเวลาใดที่จะใช้คลาสเคส (หรืออ็อบเจ็กต์เคส) เทียบกับการขยายการแจงนับใน Scala? พวกเขาดูเหมือนจะให้ประโยชน์เหมือนกัน


4
สกาล่า 2.8 breakOut
ใน Scala 2.8มีวัตถุอยู่ในscala.collection.package.scala: def breakOut[From, T, To](implicit b : CanBuildFrom[Nothing, T, To]) = new CanBuildFrom[From, T, To] { def apply(from: From) = b.apply() ; def apply() = b.apply() } ฉันได้รับแจ้งว่าผลลัพธ์นี้ใน: > import scala.collection.breakOut > val map : Map[Int,String] = List("London", "Paris").map(x => (x.length, x))(breakOut) map: Map[Int,String] = Map(6 -> London, …

7
ภารกิจไม่สามารถทำให้เป็นอนุกรมได้: java.io.NotSerializableException เมื่อเรียกใช้ฟังก์ชันภายนอกที่ปิดเฉพาะคลาสที่ไม่ใช่วัตถุเท่านั้น
รับพฤติกรรมที่ผิดปกติเมื่อเรียกใช้ฟังก์ชันนอกการปิด: เมื่อฟังก์ชั่นอยู่ในวัตถุทุกอย่างทำงานได้ เมื่อฟังก์ชั่นอยู่ในคลาสจะได้รับ: ภารกิจไม่สามารถทำให้เป็นอนุกรมได้: java.io.NotSerializableException: testing ปัญหาคือฉันต้องการรหัสในชั้นเรียนไม่ใช่วัตถุ มีความคิดว่าทำไมสิ่งนี้เกิดขึ้น? วัตถุ Scala เป็นอนุกรม (ค่าเริ่มต้นหรือไม่)? นี่คือตัวอย่างโค้ดที่ใช้งานได้: object working extends App { val list = List(1,2,3) val rddList = Spark.ctx.parallelize(list) //calling function outside closure val after = rddList.map(someFunc(_)) def someFunc(a:Int) = a+1 after.collect().map(println(_)) } นี่คือตัวอย่างที่ไม่ทำงาน: object NOTworking extends App { new testing().doIT } //adding …

5
ผนวกองค์ประกอบท้ายของรายการใน Scala
ดูเหมือนคำถามงี่เง่า แต่สิ่งที่ฉันพบบนอินเทอร์เน็ตคือถังขยะ ฉันไม่สามารถเพิ่มองค์ประกอบประเภทTลงในรายการList[T]ได้ ฉันลองด้วยmyList ::= myElementแต่ดูเหมือนว่ามันจะสร้างวัตถุแปลก ๆ และเข้าถึงเพื่อmyList.lastคืนองค์ประกอบแรกที่อยู่ในรายการเสมอ
223 arrays  scala 

1
เริ่มต้นกับ Akka Streams ได้อย่างไร? [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ปรับปรุงคำถามนี้ ห้องสมุด Akka Streams มาพร้อมกับเอกสารมากมาย อย่างไรก็ตามปัญหาหลักสำหรับฉันก็คือมันมีเนื้อหามากเกินไป - ฉันรู้สึกว่าค่อนข้างหนักใจกับจำนวนแนวคิดที่ฉันต้องเรียนรู้ ตัวอย่างจำนวนมากที่แสดงให้เห็นว่ามีน้ำหนักมากและไม่สามารถแปลไปยังกรณีการใช้งานจริงได้อย่างง่ายดายดังนั้นจึงเป็นเรื่องที่ค่อนข้างลึกลับ ฉันคิดว่ามันให้รายละเอียดมากเกินไปโดยไม่ต้องอธิบายวิธีการสร้างบล็อคทั้งหมดเข้าด้วยกันและช่วยในการแก้ปัญหาเฉพาะอย่างแน่นอน มีแหล่งที่มา, อ่าง, กระแส, ขั้นตอนกราฟ, กราฟบางส่วน, เป็นรูปเป็นร่าง, DSL กราฟิกและมากขึ้นและฉันก็ไม่รู้จะเริ่มต้นที่ไหน คู่มือเริ่มต้นอย่างรวดเร็วมีขึ้นเพื่อเป็นสถานที่เริ่มต้น แต่ผมไม่เข้าใจมัน มันแค่โยนในแนวคิดดังกล่าวข้างต้นโดยไม่ต้องอธิบายพวกเขา นอกจากนี้ตัวอย่างโค้ดไม่สามารถดำเนินการได้ - มีชิ้นส่วนที่ขาดหายไปซึ่งทำให้ฉันไม่สามารถติดตามข้อความได้มากหรือน้อย ทุกคนสามารถอธิบายแหล่งที่มาของแนวคิดอ่างล้างมือโฟลว์ช่วงกราฟกราฟบางส่วนวัสดุเป็นรูปเป็นร่างและสิ่งอื่น ๆ ที่ฉันพลาดด้วยคำง่าย ๆ และมีตัวอย่างง่าย ๆ ที่ไม่สามารถอธิบายรายละเอียดทุกอย่างได้ การเริ่มต้น)?
222 scala  akka-stream 

8
แนะนำ scalaz ที่ดี [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน7 ปีที่ผ่านมา ปรับปรุงคำถามนี้ scalaz เมื่อเร็ว ๆ นี้สบตาฉัน มันดูน่าสนใจมาก แต่ฉันไม่พบคำแนะนำที่ดีเกี่ยวกับห้องสมุด ดูเหมือนว่า scalaz จะรวมความคิดมากมายจาก Haskell และคณิตศาสตร์ บทความส่วนใหญ่ที่ฉันพบถือว่าคุณรู้สึกคุ้นเคยกับแนวคิดเหล่านี้แล้ว สิ่งที่ฉันกำลังมองหาคือการแนะนำไลบรารีและแนวคิดพื้นฐานอย่างค่อยเป็นค่อยไปตั้งแต่แนวคิดที่เรียบง่ายและพื้นฐานไปจนถึงขั้นสูงกว่า (ซึ่งเป็นพื้นฐานในพื้นฐาน) ฉันดูตัวอย่างแต่ก็ยากสำหรับฉันที่จะหาจุดที่ฉันควรเริ่มเรียนรู้ห้องสมุด ใครช่วยแนะนำ scalaz หรือบทแนะนำที่ดี (ซึ่งครอบคลุมพื้นฐานและแนวคิดขั้นสูง) ได้ไหม หรือให้ฉันเป็นจุดเริ่มต้นในคำตอบ ปรับปรุง ขอบคุณทุกคนสำหรับคำตอบที่ยอดเยี่ยม! ฉันสรุปคำตอบทั้งหมดและเพิ่มลิงก์เพิ่มเติมในบล็อกของฉัน: https://github.com/OlegIlyenko/hacking-scala-blog/blob/master/posts/Scalaz-Resources-For-Beginners.md และสำหรับผู้ที่พยายามหาเอกสาร API สำหรับ Scalaz พวกเขาอยู่ที่นี่: http://docs.typelevel.org/api/scalaz/nightly/index.html#package
215 scala  scalaz 

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