목록전체 글 (44)
Dev.
앱올리고 위의 이슈 때문에 죽을 뻔 했다. 대다수가 targetSdkVersiuon 을 27 이상으로 올렸을 때 발생된다. 1. 왜? 위 사진에서 windowIsTrasnlucent - true 가 문제다. 더 파고 들어가면, 위 style 이 적용된 상태에서 아래와 같이 orientation 을 지정 해버리면 위 exception 이 발생된다. 2. 누가? API 26 의 Activity.java 를 오픈해보자. 위의 내용은 onCreate 부근에서 찾을 수 있다. 위 사진의 exception 부분이다. API 26 부터 trunslucent 가 지정된 액티비티(투명한)는 화면의 회전을 강제하지 못하도록 수정되었다. 그런데 참 웃기다. 위 코드가 보이질 않아서 한참 찾았는데, API 27부터는 위 코드..
1. Java 의 Switch-case 구문 //in java int val_ = 0; switch(val_){ case 1: System.out.print("print 1"); break; case 2: System.out.print("print 2"); break; default: System.out.print("default"); break; } 위 와 같은 switch-case 분기문을 자바에서 꽤 자주 사용 하였을 것 이다. switch-case 의 최대 단점으로 생각 했던 것 은 - 조건 당 걸리는 break 가 누락 된다면, 의도치 않은 아래의 case 까지 경유 하는 부분. (이로 인해서 간단한 소스코드 에서는 별 문제가 없겠지만, 거대한 소스일 경우 찾기 힘들정도의 에러를 뱉어낼 수 있다..
public void calculate(int val) { int[] dp = new int[val + 1]; dp[0] = 0; if(val>0) { dp[1] = 1; } if(val>1) { dp[2] = 2; } for (int i = 3; i 2 에서 dp[n] = dp[n-1] + dp[n-2] 를 만족하는 것을 확인 할 수 있다. 단, 주의 할 점은 순서대로 계속 더해나가면 어느순간 dp값이 int 나 long 의 범위를 초과하게 된다. 0~2 까지 디폴트 값을 선언하고 그 외의 값에 대해서 dp[]에 적재 할 때, 미리 주어진 값으로 나눈 나머지 값을 적재 하도록 하자.
//성공 public void calculate(int val[]) { for (int i : val) { int oneBefore = 0; int oneAfter = oneBefore; int zero = 1; if (i > 0) { oneBefore = 1; oneAfter = oneBefore; zero = 0; for (int j = 1; j 1) { va..
https://androidstudio.googleblog.com/2019/11/android-studio-352-available.html Android Studio 3.5.2 available Android Studio 3.5.2 is now available in the Stable channel. If you already have an Android Studio build on the Stable channel , you can ... androidstudio.googleblog.com Android Studio 3.5.2 is now available in the Stable channel. If you already have an Android Studio build on the Stable..