2017-10-03 3 views
1

collection.mutable.Stack을 가져 오려면 Stack[] 또는 mutable.Stack[]()을 사용해야하며 둘 사이에 차이점이 있습니까?Stack []과 mutable.Stack [2]의 차이점

+0

시도해 보셨습니까? 'mutable.Stack'에 대한 참조는'collection.mutable'을 가져 오는 경우에만 작동합니다. (BTW,'Stack'은 더 이상 사용되지 않습니다.) – jwvh

+0

하하, IntelliJ가 가져온 후에도 IntelliJ에서 Stack을 취소 한 이유를 설명합니다. –

답변

2

두 가지를 동시에 수행 할 수는 없습니다. 가능한 두 가지 방법이 있습니다. 당신이 scala.collecion.mutable.Stack를 가져 오는 첫 번째 예에서는 scala.collection.mutable

import scala.collection.mutable 
val stack: mutable.Stack[Int] = new mutable.Stack[Int] 

가져 오기

1. 가져 오기 scala.collection.mutable.stack

import scala.collection.mutable.Stack 
val stack: Stack[Int] = new Stack[Int] 

2. . 따라서 Stack 개체와 그 기능을 직접 사용할 수 있습니다. 두 번째 항목에서는 scala.collection.mutable을 가져오고 있습니다. 이 방법을 사용하면 mutable 패키지의 기능을 사용할 수 있습니다. mutable.xxx을 호출하여이 패키지의 객체를 사용해야합니다.

1

일반적으로 불변의 데이터 구조를 최대한 많이 사용하는 경우, import scala.collection.mutable을 사용하고 mutable.Stack을 사용하면이 특별한 경우에 변경 가능한 버전을 사용하고 있음을 명확히 알 수 있습니다. 이 규칙은 다음에서 설명합니다 scala documentation for collections