assignment are not expressions and only expressions are allowed in this context

=  할당은 표현식이 아니며 표현식 만이 컨텍스트에서 허용됩니다.

kotlin의 while문 조건선언 부분에선 할당이 불가능한가부다.

<오류>

1
2
3
4
  while(( getJSON.JSON_STRING = bufferedReader.readLine()) != null) {
 
                    stringBuilder.append(JSON_STRING+"\n")
                }
cs

 

<수정>

1
2
3
4
5
    JSON_STRING = bufferedReader.readLine()
 
                while(JSON_STRING!!.isNotEmpty()) {
 
                    stringBuilder.append(JSON_STRING+"\n")
                }
cs

 

 

+) 멍청,, JSON_STRING.isNotEmpty 면 무한루프를 돌고 JSON_STRING.isEmpty면 아예 안 돌고,,

첨에 잠깐 멘붕와서 for문으로 해보고 이것저것 해봤는데 지치기도하고 피곤해서

걍 통째로 읽어오고 bufferedReader에서 읽을게 없으면 while문을 끝내도록 했다.

 

<2차 수정>

1
2
3
4
5
6
7
    JSON_STRING = bufferedReader.readLine()
 
                while (true) {
                    stringBuilder.append(JSON_STRING)
                    bufferedReader.readLine() ?: break
                }
cs

 

+ Recent posts