안녕하세요, 봉자씨입니다.

맥을 자주 사용하시면 깨닫는게 있습니다. 

바로 맥에서 단축키를 사용하지 않았다면 와...와...

얼마나 내가 불편 했을까하는 생각이 들 정도로 소중하다는 것을 말입니다.

오늘은 맥을 사용한다면 알아야 하는 필수라고 까지 말 할 수 있는 단축키를 12가지를 알려드릴게요!


1. 그 창만 쏙 하고 잠재우기(딱 그창만 화면 없애버리기)

COMMAND + W

꼭 알아야 하는 단축키!

누군가 나의 모니터를 바라 보고 있다면 쏙 하고 나의 중요한 정보를 감추세요!

프로그램을 종료하는 것은 아니에요!

단지 잠자기 상태로 바꾼답니다.


2. 모든 창을 최소화 하기(한번에 모든 창 내리기)

COMMAND + OPTION+ W

모든 창을 한번에 최소화 해줍니다. 

쏙하고 내려가는 효과를 보게 됩니다.


3. 모든 창을 화면에서 사라지게 하기(모든 창 숨기기)

COMMAND + H

화면상에 떠 있는 모든 창을 한번에 숨겨 줍니다.

직장 상사가 지나가거나 선배가 지나간다면?

바로 이 단축키 입니다.!


4. 활성화된 창 잠시 저리 비켜보세요(맥 바탕화면을 보게 모든 창을 저리 치울때)

COMMAND + F3

맥을 사용하다보면 여러가지 화면을 많이 켜놓게 됩니다.

굳이 맥이 아니더라도 그런 습관 아닌 습관을 가지는 경우가 많죠

그럴 때는 바탕화면 구경하기가 쉽지 않아요.

이럴때 바로 이키를 사용해보세요!


5. 크롬 창에 여러 탭을 가지고 있다면 탭을 자유롭게 이동하기

COMMAND + 1 or 2 or 3....

숫자 만큼 해당 탭으로 이동합니다.

1이라면 첫번째 탭으로

2라면 두번째 탭으로 이동하게 되는 것이죠.

아무 것도 아닌데 사용하다 보면 정말 편해요!


6. 맥을 순식간에 끄는 단축키

CONTROL + OPTION + COMMAND + EJECT(오른쪽 모서리 상단에 있는키)

이렇게 누르면 맥이 순삭 꺼집니다.


7. 마우스 스크롤 효과를 화살 키로 즐기기

COMMAND + DOWN or UP

스크롤 기능이 점프 점프 기능으로 바뀝니다.

그래서 빠르게 훑어 볼 수 있게 되죠!


8. 서식까지 복사해 보세요

CONTROL + COMMAND + V

이렇게 누르면 텍스트에 적용된 서식까지 복사가 되요!


9. 사전 기능?

CONTROL + COMMAND + D

사전이 딱하니 떠서 모르는 단어도 쉽게 이해하고 넘어 갈 수 있답니다.


10. 삭제를 좀더 빠르게 하고 싶다면?

OPTION+DELETE

한 글자씩 지워졌다면, 이제는 한 단어씩 빠르게 지워집니다.


11. 유투브 볼때 완전 HOT KEY 점프점프

1, 2, 3, 4...

유튜브를 보고 있다면 한번 숫자키를 눌러보세요

10%, 20%, 30%, 40%...아주 빠르게 재생 점프하게 됩니다.


12.볼륨 조절을 이제 조금더 세밀하게 조절하고 싶다면?

OPTION+SHIFT+F11(세밀히 줄이고)

or

OPTION+SHIFT+F12(세밀히 올리고)

이제 볼륨을 키로 좀더 세밀하게 조절해 보세요!


글이 조금이나마 도움이 되셨다면 공감 부탁드립니다.

오늘도 좋은 하루 되세요!

감사합니다.

클릭 클릭 공감 클릭~~





안녕하세요, 봉자씨입니다.


안드로이드에서 api를 호출할 경우 자주 사용하는 retrofit2

이를 사용하다 보면 json데이터를 파싱하는 경우가 많습니다. 

이럴 경우 아래와 같이 사용하여 처리를 했습니다.


Retrofit client = new Retrofit.Builder()
.baseUrl("http://bongjacy.com/")
.client(new OkHttpClient()).addConverterFactory(GsonConverterFactory.create()).build();


이렇게 사용하다 보면 특정 데이터에서 null이 들어 오는 경우가 있습니다.

또는 숫자라고 생각하고 이를 String으로 받아서 바꿔 사용하고 있다면 Inteager.Valueof를 사용하다 보면 Exception이 발생하게 됩니다.

당연하죠.. 데이터가 없으니

이럴 경우 null일 때는 "0"으로 넣어야 하는 경우가 생기더라고요.(순전히 저의 경우지만...^^;;)

이를 해결하기 위해서 아래와 같은 소스 코드를 추가해 주시면 됩니다.

기본적 셋팅 부분은 아래와 같이 하시면 됩니다.


GsonBuilder gsonBuilder = new GsonBuilder();
gsonBuilder.registerTypeAdapterFactory(new NullStringToEmptyAdapterFactory()).create();
gsonBuilder.serializeNulls();
Gson gson = gsonBuilder.create();
Retrofit client = new Retrofit.Builder()
.baseUrl("http://bongjacy.com/")
.client(new OkHttpClient()).addConverterFactory(GsonConverterFactory.create(gson)).build();


그리고 두개의 클래스를 추가합니다.

첫번째 StringAdapter입니다.

import com.google.gson.TypeAdapter;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonToken;
import com.google.gson.stream.JsonWriter;

import java.io.IOException;

public class StringAdapter extends TypeAdapter<String> {
public String read(JsonReader reader) throws IOException {
if (reader.peek() == JsonToken.NULL) {
reader.nextNull();
return "0"; //여기서 null일 경우에는 0으로 치환해서 보내게 됩니다. 핵심!
}
return reader.nextString();
}
public void write(JsonWriter writer, String value) throws IOException {
if (value == null) {
writer.nullValue();
return;
}
writer.value(value);
}
}


두번째 NullStringToEmptyAdapterFactory입니다. 기본 셋팅 부분에 추가됐던 TypeAdapterFactory 클래스입니다.

import com.google.gson.Gson;
import com.google.gson.TypeAdapter;
import com.google.gson.TypeAdapterFactory;
import com.google.gson.reflect.TypeToken;

public class NullStringToEmptyAdapterFactory<T> implements TypeAdapterFactory {
public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> type) {

Class<T> rawType = (Class<T>) type.getRawType();
if (rawType != String.class) {
return null;
}
return (TypeAdapter<T>) new StringAdapter();
}
}


이렇게 해주시면 null to zero가 되게 됩니다.

감사합니다.

글이 조금이나마 도움이 되셨다면 공감 부탁드립니다.

오늘도 좋은 하루 되세요!

감사합니다.

클릭 클릭 공감 클릭~~





안녕하세요, 봉자씨입니다.

엑셀의 OR함수에 대해서 알아 보도록 하겠습니다.

이전에 학습한 AND함수랑 아주 유사성이 많습니다.

두개의 함수의 공통점은 논리함수라는 것입니다.

함수의 결과 값으로 얻는 값이 논리 값이다 하여 논리 함수다라고 생각하시면 됩니다.


OR함수 역시  어느 수식에든 들어가는 감초 같은 함수입니다.

역시나 요기 조기 들어가서 요긴하게 쓰입니다.


그럼 OR는 어떤 기능을 할가요?


인수값이 어떤 값이 들어가고 결과 값으로 어떤 논리 값이 나오는 지를 한번 보겠습니다.

먼저 인수값으로는 역시 논리 값이 들어 가고 있습니다.

True, False 값이 나올 수 있는 논리 값.


=OR(논리값,논리값,논리값......)


그럼 OR가 하는 역할은 무엇일까요?

OR함수 내에 인수로 들어오는 논리 값 중에서 어느 하나라도 값이 TRUE라면

결과 값으로 TRUE의 값을 반환해 줍니다.


여러 조건들을 해당 함수에 넣었을 경우에 결국 하나라도 맞는 조건이 있다면

결과값으로 TRUE를 반환해 준다는 것입니다.


이하 T는 true, F는 false


=OR(T,T,T)

결과는 T


=OR(F,F,F)

결과는 F


=OR(T,T,T,F)

결과는 T


=OR(F,F,F,T)

결과는 T



함수의 기능을 보면 그리 어렵죠.

그런데 이전에 AND함수와 마찬가지로 이렇게 단순하게 사용되지 않습니다.

감초는 감초 답게 여러 함수와 콜라보가 되어져서 사용됩니다.

하지만 해당 기능을 정확하게 이해해야 콜라보도 할 수 있다는 것을 기억하세요.

쉬운 기능이지만 이 기능이 나중에 큰 효과를 발휘하게 된답니다.

차차 확인하는 것으로 하고 일단 OR기능에 대해서 다시 예를 들어서

설명을 드리겠습니다.


아래의 예를 보면 수학 과학 영어 체육 해당 과목 중에서 한 과목이라도 90점이 넘는 다면!!

바로 TRUE를 반환해 주는 식입니다.


결국 한과목이라도 90점을 넘는 학생을 구한다면 아래와 같은 수식을 쓸 수 있겠죠?


그래서 위의 수식을 조금 응용해서 쓴다면 아래와 같은 수식을 쓸 수 있습니다.

= if(OR(A2>90,B2>90,C2>90,D2>90), "과목 우수", "")

이렇게 수식을 쓴다면 한과목이라도 90점을 넘는 경우 과목 우수가 반환이 되게 됩니다.

그리고 그렇지 않다면 빈공간이 나오겠죠.


여기서 우리가 이전에 배운 AND함수도 한번 콜라보를 해볼가요

= IF(AND(AND(A2>60,B2>60,C2>60,D2>60),OR(A2>90,B2>90,C2>90,D2>90)), "전과목 평균 이상 과목 우수", "")


이렇게 수식을 쓴다면 모든 과목이 60점이 넘어야 하고
과목중에 하나는 90점이 넘어야
전과목 평균 이상 그리고 과목 우수가 되게 됩니다.

아직은 복잡할 수 있지만 간단한 원리만 일단 이해하시고
나중에 복잡한 수식을 수행할 때에 활용 하시면 됩니다.

마지막으로 한장 정리 들어 갑니다.





글이 조금이나마 도움이 되셨다면 공감 부탁드립니다.

오늘도 좋은 하루 되세요!

감사합니다.

클릭 클릭 공감 클릭~~





'엑셀 > 엑셀 함수' 카테고리의 다른 글

엑셀 IF 함수  (0) 2018.12.17
엑셀 OR 함수  (0) 2018.08.07
엑셀 AND 함수  (0) 2018.08.03

안녕하세요, 봉자씨입니다.

안드로이드P 기사에 대해서 정리해 봅니다.

안드로이드P 8월 20일 출시 가능성 높음.

미공개 최신 IT기기 정보를 올리는 Evan Blass는 자신의 트위터에

올렸으며, 또한 지난 해 안드로이드 8.0 오레와 발표일과 거의 동일하다는 것을 알 수 있다.

결국 올해 최신 안드로이드 운영체제와 픽셀 스마트 폰 출시 일정은 지난해와 똑같이

운영체제는 8월말

픽셀폰은 10월 초 출시 패턴을 따를 것이라 예상됨

 

글이 조금이나마 도움이 되셨다면 공감 부탁드립니다.

오늘도 좋은 하루 되세요!

감사합니다.

클릭 클릭 공감 클릭~~





안녕하세요, 봉자씨입니다.

안드로이드 스튜디오를 업데이트 하면서 갑자기 무한 루프가 진행되듯

Indexing/Scanning/Building

반복된다면 어떻게 해야 할가요?
이것 저것 해봐도 멈추지도 않고
버티고 해보려해도 한계에 달했습니다.

답은 은근히 간단합니다.
아래의 빨간 부분을 클릭해서 한번 정리하고 나시면
정상으로 돌아 옵니다.

글이 조금이나마 도움이 되셨다면 공감 부탁드립니다.

오늘도 좋은 하루 되세요!

감사합니다.

클릭 클릭 공감 클릭~~

+ Recent posts