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

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

10
ฉันจะดูประเภทของนิพจน์สกาล่าใน IntelliJ ได้อย่างไร
ปลั๊กอิน Eclipse scala มีคุณลักษณะที่ดีซึ่งจะแสดงประเภทของตัวแปรเมื่อคุณวางเมาส์เหนือตัวแปรนั้น ฉันจะดูข้อมูลเดียวกันกับปลั๊กอิน IntelliJ ได้อย่างไร

15
ไลบรารี JSON ใดที่จะใช้ใน Scala [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน3 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันต้องการสร้างสตริง JSON สิ่งนี้: [ { 'id': 1, 'name': 'John'}, { 'id': 2, 'name': 'Dani'} ] val jArray = JsArray(); jArray += (("id", "1"), ("name", "John")) jArray += (("id", "2"), ("name", "Dani")) println(jArray.dump) ฉันต้องสามารถเพิ่มแถวในjArrayสิ่งที่ต้องการjArray += ... ห้องสมุด / วิธีแก้ปัญหาที่ใกล้เคียงที่สุดคืออะไร?
126 json  scala 

1
ประเภทที่ขึ้นกับพา ธ ของ Scala หมายถึงอะไร?
ฉันได้ยินมาว่า Scala มีประเภทที่ขึ้นกับเส้นทาง มันเกี่ยวกับคลาสชั้นใน แต่จริงๆแล้วมันหมายความว่าอย่างไรและทำไมฉันถึงสนใจ?

7
จะจับคู่รูปแบบโดยใช้นิพจน์ทั่วไปใน Scala ได้อย่างไร
ฉันต้องการจับคู่ระหว่างอักษรตัวแรกของคำกับตัวอักษรตัวใดตัวหนึ่งในกลุ่มเช่น "ABC" ใน pseudocode สิ่งนี้อาจมีลักษณะดังนี้: case Process(word) => word.firstLetter match { case([a-c][A-C]) => case _ => } } แต่ฉันจะคว้าตัวอักษรตัวแรกใน Scala แทน Java ได้อย่างไร ฉันจะแสดงออกอย่างถูกต้องได้อย่างไร มันเป็นไปได้ที่จะทำเช่นนี้ภายในชั้นกรณี ?
124 regex  scala 

7
วิธีที่สะอาดกว่าในการอัปเดตโครงสร้างที่ซ้อนกัน
สมมติว่าฉันมีสองสิ่งต่อไปนี้case class: case class Address(street: String, city: String, state: String, zipCode: Int) case class Person(firstName: String, lastName: String, address: Address) และตัวอย่างต่อไปนี้ของPersonคลาส: val raj = Person("Raj", "Shekhar", Address("M Gandhi Marg", "Mumbai", "Maharashtra", 411342)) ตอนนี้ถ้าผมต้องการที่จะปรับปรุงzipCodeของrajแล้วฉันจะต้องทำ: val updatedRaj = raj.copy(address = raj.address.copy(zipCode = raj.address.zipCode + 1)) ด้วยระดับที่มากขึ้นของการซ้อนสิ่งนี้จะทำให้น่าเกลียดยิ่งขึ้น มีวิธีที่สะอาดกว่า (เช่น Clojure's update-in) ในการอัปเดตโครงสร้างที่ซ้อนกันดังกล่าวหรือไม่?
124 scala  case-class  zipper 

10
จะพิมพ์เนื้อหาของ RDD ได้อย่างไร?
ฉันกำลังพยายามพิมพ์เนื้อหาของคอลเลกชั่นไปยังคอนโซล Spark ฉันมีประเภท: linesWithSessionId: org.apache.spark.rdd.RDD[String] = FilteredRDD[3] และฉันใช้คำสั่ง: scala> linesWithSessionId.map(line => println(line)) แต่สิ่งนี้ถูกพิมพ์: res1: org.apache.spark.rdd.RDD [หน่วย] = MappedRDD [4] ที่แผนที่เวลา: 19 ฉันจะเขียน RDD ลงในคอนโซลหรือบันทึกลงในดิสก์เพื่อดูเนื้อหาได้อย่างไร

6
จะบังคับให้ IntelliJ IDEA โหลดการอ้างอิงซ้ำจาก build.sbt หลังจากเปลี่ยนได้อย่างไร
ฉันใช้ IntelliJ IDEA 13 (Community Edition) กับปลั๊กอิน Scala การนำเข้าครั้งแรกของโครงการ Scala ที่มีอยู่ซึ่งใช้build.sbtงานได้ดี การอ้างอิงไลบรารีถูกเลือกขึ้นโดย IDEA การอ้างอิงเพิ่มเติมที่เพิ่มหลังจากไม่ได้รับการนำเข้าครั้งแรกแม้ว่าฉันจะตรวจสอบauto-importตัวเลือกแล้วก็ตาม ฉันจะบังคับให้ IDEA โหลดการอ้างอิงซ้ำได้build.sbtอย่างไร
123 scala  intellij-idea  sbt 

3
การจับคู่รูปแบบใน Scala ถูกนำไปใช้ในระดับ bytecode อย่างไร?
การจับคู่รูปแบบใน Scala ถูกนำไปใช้ในระดับ bytecode อย่างไร? มันเหมือนกับชุดของif (x instanceof Foo)โครงสร้างหรืออย่างอื่น? ผลกระทบด้านประสิทธิภาพคืออะไร? ตัวอย่างเช่นเมื่อได้รับรหัสต่อไปนี้ (จากหน้าScala By Example 46-48) โค้ด Java ที่เทียบเท่าสำหรับevalวิธีการจะเป็นอย่างไร abstract class Expr case class Number(n: Int) extends Expr case class Sum(e1: Expr, e2: Expr) extends Expr def eval(e: Expr): Int = e match { case Number(x) => x case Sum(l, r) …

19
ไม่สามารถสร้างคลาส Scala บน IntelliJ
ฉันเพิ่งเริ่มเรียนรู้สกาล่า ฉันได้ติดตั้งปลั๊กอิน Scala สำหรับ IntelliJ และสร้างโครงการ Scala ใหม่ แต่เมื่อฉันคลิกขวาที่โฟลเดอร์ src เพื่อสร้างคลาส Scala ใหม่จะไม่มีตัวเลือกให้ทำ ฉันพลาดอะไรไปรึเปล่า?

1
การทำความเข้าใจการแจงนับสกาลา
ฉันต้องบอกว่าฉันไม่เข้าใจชั้นเรียนการแจงนับของ Scala ฉันสามารถคัดลอกและวางตัวอย่างจากเอกสารประกอบได้ แต่ฉันไม่รู้ว่าเกิดอะไรขึ้น object WeekDay extends Enumeration { type WeekDay = Value val Mon, Tue, Wed, Thu, Fri, Sat, Sun = Value } import WeekDay._ หมายถึงอะไรtype WeekDay = Valueและทำไมต้องเขียนแบบนั้น? ทำไมval Mon = Value? นั่นหมายความว่าอย่างไร? เหตุใดฉันจึงต้องนำเข้าWeekDay วัตถุ และ, เมื่อผมเขียนval day = WeekDay.Monทำไมมันพิมพ์WeekDay.Valueไม่พิมพ์WeekDay?
122 scala  enums 

5
อะไรคือความแตกต่างระหว่างกรอบการทดสอบหน่วย ScalaTest และ Scala Specs
ทั้งสองเป็นกรอบการทดสอบหน่วยที่มีความสามารถ BDD (Behavior Driven Development) สำหรับ Scala ที่เขียนด้วย Scala และข้อกำหนดที่ สร้างขึ้นอาจเกี่ยวข้องกับกรอบงานScalaTest แต่สิ่งที่ Specs เสนอให้ ScalaTest ไม่มี? อะไรคือความแตกต่าง?

1
สกาลามีข้อ จำกัด อะไรบ้างสำหรับ "ความซับซ้อนที่ยอมรับได้" ของประเภทที่อนุมาน
ตามข้อกำหนดภาษาสกาล่า : ... การอนุมานประเภทท้องถิ่นได้รับอนุญาตเพื่อจำกัดความซับซ้อนของขอบเขตที่อนุมาน [ของพารามิเตอร์ประเภท] ต้องเข้าใจ Minimality และ Maximality เมื่อเทียบกับชุดของประเภทของความซับซ้อนที่ยอมรับได้ ในทางปฏิบัติมีข้อ จำกัด อะไรบ้าง? นอกจากนี้ยังมีขีด จำกัด ที่แตกต่างกันที่ใช้กับประเภทนิพจน์ที่อนุมานมากกว่าขอบเขตประเภทพารามิเตอร์และขีด จำกัด เหล่านั้นคืออะไร

14
การดีบักโค้ด Scala ด้วย simple-build-tool (sbt) และ IntelliJ
วิธีที่ง่ายที่สุดในการดีบักโค้ด Scala ที่จัดการโดย sbt โดยใช้ดีบักเกอร์ในตัวของ IntelliJ คืออะไร เอกสารประกอบจาก"RunningSbt" จากไซต์โค้ด google ของ sbtจะแสดงรายการคำสั่งสำหรับการรันคลาสหลักสำหรับโปรเจ็กต์หรือการทดสอบ แต่ดูเหมือนจะไม่มีคำสั่งสำหรับการดีบัก คำถามติดตามผล: วิธีที่ง่ายที่สุดในการแนบดีบักเกอร์ของ IntelliJ กับ Jetty เมื่อใช้คำสั่ง jetty-run ของ sbt คืออะไร



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