안드로이드 코딩하면서 유용한 걸 적어둔다.
오늘날짜 구하기
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
SimpleDateFormat formater = new SimpleDateFormat("yyyyMMdd", Locale.KOREA);
Date current = new Date();
String date = formater.format(current);
Toast.makeText(getApplicationContext(), "date ==="+date, Toast.LENGTH_SHORT).show();
소요시간 측정하기
걸리는 시간을 측정해서 대체 코드를 구현해야 할지 판단할 때 좋을 듯하다.
final SimpleDateFormat FORMATTER = new SimpleDateFormat("mm:ss.SSS");
long startTime = System.currentTimeMillis();
System.out.println("Time taken to insert " + FORMATTER.format(new Date(System.currentTimeMillis() - startTime)));
배열 선언
int[] apple = {20, 27, 24, 26, 32, 40};
위의 행은
int[] apple = new int[] {20, 27, 24, 26, 32, 40};
와 같다.
- apple.length는 배열의 길이를 의미
- 배열은 첨자(index, 인덱스)값으로 접근한다.
- 첨자값은 0부터 시작한다.
ArrayList 를 배열로 변환
toArray() 메소드를 이용한다.
ArrayList<Integer> pbook = new ArrayList<Integer>();
pbook.add(1);
pbook.add(2);
pbook.add(3);
pbook.add(4);
// List -> Integer 배열
Integer[] pArray = pbook.toArray(new Integer[pbook.size()]);
int i=0;
for(Integer temp : pbook){
pArray [i++] = temp;
}
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("Test1");
arrayList.add("Test2");
arrayList.add("Test3");
String[] array = new String[arrayList.size()];
int i=0;
for(String temp : arrayList){
array[i++] = temp;
}
배열을 ArrayList 로 변환
// String[] -> List
String[] array = {"aaa", "bbb", "ccc"};
배열을 ArrayList 또는 List로 변환하는 것은 아래 3개중에서 한줄이면 된다.
List<String> list = Arrays.asList(array);
List<String> list = Arrays.<String>asList(array);
ArrayList<String> arrayList = new ArrayList<>(Arrays.asList(array));
List<String> list = Arrays.asList(str.split("\\s*,\\s*")); // 콤마로 구분해서 문자열을 넣어준다.
화면 출력하는 방법은
Iterator<String> ie = arrayList.iterator();
while (ie.hasNext()) {
System.out.println(ie.next());
}
무식한 방법으로 for문을 사용하는 방법은
String[] array = new String[3];
array[0] = "Test1";
array[1] = "Test2";
array[2] = "Test3";
ArrayList<String> mList = new ArrayList<>();
for(String temp : array){
mList.add(temp);
}
배열을 매개변수로 받는 메소드
public static int[] addNumArray(int[] pArray){
for(int i=0; i < pArray.length; i++)
pArray[i] += 10;
return pArray;
}
ArrayList 검색
- ArrayList에 indexOf(Object o) 메소드를 사용하면 해당 값이 ArrayList에서 몇번째 위치해 있는지 찾아준다.
- indexOf 결과가 없으면 -1 을 반환한다.
- index 와 get 메소드를 이용하여 원하는 값을 찾아낼 수 있다.
- index 값이 -1 인 경우 get(indexOf(Object o)) 를 하니까 에러를 발생시킨다.
이 경우에는 반드시 분리해서 처리를 해야 에러가 없이 동작된다.
String temp_key = ""; |
- indexOf 는 동일한 값이 2개 이상 존재하면 가장 먼저 찾은 결과를 반환하기 때문에 결과가 부정확할 수도....
ArrayList 수정
ArrayList<String> arraylist = new ArrayList<String>();
arraylist.set(인덱스번호,"변경할 값");
문자열 비교
등위 연산자(==)
- 같은 자료형을 비교하면 같다(true)
- 기본 자료형과 참조형을 비교하면 다르다(false)
equalsIgnoreCase(), equals()
- 기본 자료형과 참조형을 비교하면 같다(true)
주소 비교가 아니라 값을 비교한다.
- equals() 는 대소문자를 구분하여 비교한다.
- equalsIgnoreCase()는 대소문자를 구분하지 않고 비교한다.
'안드로이드 > Android 기능' 카테고리의 다른 글
안드로이드 서비스(Service) 개념 정리 (0) | 2017.08.10 |
---|---|
안드로이드 Sliding 토글 버튼 (0) | 2017.07.25 |
안드로이드 프로세스 수행시간 측정 (0) | 2017.06.12 |
아파치 웹서버 vs nginx, 안드로이드 설계 고려사항 (0) | 2017.05.01 |
안드로이드 KeyEvent.KEYCODE_BACK (0) | 2017.05.01 |