2012-03-09 3 views
4

배열의 항목에 대한 별칭을 스칼라로 만들 수 있습니까? 아래의 코드는 작동하지 않지만 그런 식으로 작동합니다.스칼라에서 다른 변수에 대한 별칭을 만들 수 있습니까?

var str=new ArrayBuffer[String](10) 
def alias = str(1) 
alias="test" 
print(alias) 

아래 코드는 작동하며 기본적으로 위의 코드로 수행하고자하는 작업입니다. 하지만이 변수를 사용할 때마다 str (ALIAS)을 입력하고 싶지 않습니다. 나는 짧은 이름을 원하는

var str=new ArrayBuffer[String](10) 
val ALIAS=1 
str(ALIAS) = "test" 
print(str(ALIAS)) 

답변

4

그냥 표준 세터 구문을 사용합니다

var str= Array("a", "b", "c") 

def alias = str(1) 
def alias_=(s: String) { 
    str(1) = s 
} 

alias = "test" 
print(alias) 
+0

감사합니다, 잘 작동합니다. – Elonoa

+1

나는 정확하게 코드를 실행하고 얻을 : '스칼라> 별칭 = "테스트" : 9 : 오류 : 값 alias_은 = 개체 $의 IW 별명 = "테스트" ^' – nicerobot

+1

@nicerobot의 구성원이 아닌 : 일부 이유는 REPL에서 작동하지 않지만 컴파일 할 때 잘 작동합니다. –

관련 문제