얻을이 가능하다. 그게 가능하니?스칼라, parametherised 객체
답변
은 어쩌면 당신은 객체의
object MyListMaker {
def test[A](a0: A, n: Int): List[A] = (1 to n).map(_ => a0).toList
}
scala> MyListMaker.test("Fish",7)
res0: List[java.lang.String] = List(Fish, Fish, Fish, Fish, Fish, Fish, Fish)
한 장만 같은 것을 의미 존재; 일반 무언가를 수행하는 메서드를 만들려면 개체가 아닌 메서드에 type 매개 변수를 추가합니다.
특성 또는 개체에는 생성자 매개 변수를 사용할 수 없으며 개체에는 형식 매개 변수를 사용할 수 없습니다.
개체는 실제로 클래스의 싱글 톤 인스턴스입니다. 따라서 이름이 하나뿐이기 때문에 일반 정의를 사용할 수 없습니다.
가장 좋은 방법은 원하는 목록을 반환하는 개체 내에서 메서드를 정의하는 것입니다.
그래서 어떤 유형의 목록을 생성하는 가장 좋은 방법은 무엇입니까? – matiit
특성에는 확실히 유형 매개 변수가있을 수 있습니다! 객체는 그렇지 않을 수도 있습니다. –
특징을 설명하기 : 형질은 유형 매개 변수를 가질 수 있지만 생성자 매개 변수는 가질 수 없습니다. Answer 편집 됨 –
- 1. 스칼라 객체 MODULE $
- 2. 스칼라 객체 직렬화
- 3. 스칼라 : 클래스, 객체, 이클립스의 APP 스칼라 플러그인
- 4. val 필드가있는 불변 객체 및 특성 스칼라
- 5. 스칼라 : 변경 가능 객체 변경 - OutOfMemoryError
- 6. 스칼라 : 나는 스칼라 시험을 검색했다
- 7. 스칼라
- 8. 스칼라
- 9. 스칼라
- 10. 스칼라
- 11. 스칼라
- 12. 스칼라 문제 옵션 생성자
- 13. lift-json을 사용하여 JSon String으로 스칼라 객체 직렬화
- 14. 스칼라 게임 프로그래밍 : 기능적 스타일로 객체 위치를 전진
- 15. 스칼라 IDE 오류 - "projectname"이 (가) 스칼라 프로젝트가 아닙니다.
- 16. 스칼라 클로저에 대한 질문 ("스칼라 프로그래밍"에서)
- 17. 스칼라 컬렉션입니다.
- 18. 스칼라 직렬화
- 19. :: 및 ::: 스칼라
- 20. 스칼라 방법 _ =
- 21. 스칼라 :지도
- 22. 스칼라 2.8-
- 23. 기업 스칼라
- 24. 스칼라 반영
- 25. 반사와 스칼라
- 26. 스칼라 'fromFile'별난?
- 27. 스칼라 인자를 가진 Invoke selector
- 28. 스칼라 2.8 TreeMap과 커스텀 주문
- 29. NetBeans 용 스칼라 플러그인을 설정하여 스칼라 런타임 라이브러리를 복사하려면 어떻게해야합니까?
- 30. 이전 스칼라 버전에서만 사용 가능한 스칼라 라이브러리 사용
'test' 대신에'apply' 메소드를 만들어야합니다. 그러면 어떤 질문을 받았는지에 대한 구문이 훨씬 더 가까워집니다. –
@ 대니얼 - 아마도 그렇습니다. 나는 무엇이 요구되는지를 알아 내는데 어려움을 겪었고,'apply'를 사용하는 것이 그것이 왜 효과가 있는지를 이해하는데 추가적인 주름을 추가시킵니다. 그러나 예,'def apply ... '와 함께하면 MyListMaker ("Fish", 7)가됩니다. 실제로'A '가 없어도'A'의 목록을 만드는 것에 대해 더 걱정했습니다. –