본문 바로가기

기억보단 기록을23

[자료구조][Java] 배열( Array ) 1. 배열은 왜 필요 할까? 같은 종류의 데이터를 효율적으로 관리하기 위해 사용 같은 종류의 데이터를 순차적으로 저장. 장점 빠른 접근 가능 첫 데이터의 위치에서 상대적인 위치로 데이터 접근 (인덱스 번호로 접근) 단점 데이터 추가/삭제의 어려움 미리 배열의 최대 크기를 지정해야 함 2. Java에서는 기본 문법으로 배열을 지원 1차원 배열은 [ ] 를 통해 선언할 수 있음 각 아이템은 { } 내에 콤마로 구분하여 작성 // new 키워드를 사용해서, 배열을 미리 선언하고, 데이터를 넣을 수도 있음 Integer[] data_list = new Integer[10]; data_list[0] = 1 C 언어와 다르게 Java는 선언 과정에서 배열의 크기를 지정할 수 없다. // 선언 부에서 절대로 배열의 .. 2022. 4. 19.
[안드로이드][해결][xml] Invalid byte 2 of 3-byte UTF-8 sequence. (안드로이드스튜디오 이모지) xml파일을 수정 하던중 맞이한 에러입니다. 코드 작성 동안 전혀 스튜디오상에서 에러란 찾을 수 없다가 빌드하려고 하니 나타난 에러인데요. 의외로 간단한 문제였습니다. 범인은 바로 이 입니다만.. 이게 또 빌드하기 전까진 잘 표시가 됩니다. 때문에 대체 뭐가 에러인지 생각해보다가 이번에 새로 추가하게된 바로 이 '😎' 이모지 이 친구가 범인이었습니다. 뭔가 귀엽게 표시 해보려 하다 에러를 맞이하게 되었는데요 . 물론 이 이모지를 당연하게 지우고 빌드를 한다면 제대로 잘 작동합니다. 그럼 궁금한게 한가지 생깁니다. "뭐야, 이모지 못넣어?" 아니요. 넣을 수 있습니다. 위의 는 text를 하드코딩 해서 xml파일 자체에 작성을 했습니다. 하지만, 위 처럼 strings.xml파일에 따로 작성해서 앱을 구동.. 2022. 4. 12.
[Java] 실수형 연산의 오류 , 0.1 + 0.2 = 0.3이 왜 아닐까? (feat. BigDecimal 사용법) 서론 알고리즘 문제를 풀다 보니 double형의 계산을 해아 할 때가 있었는데, 간혹 가다 정말 내 머리로는 오점이 없는데 틀렸다고 나온다. 맞왜틀.. 이 경우에는 대부분 나의 논리적 오류였지만, 찾아보니 double형의 합 연산이 근사치를 표현한다고 찾아서 나중에 실수하지 않기 위해, 또한 궁금증을 제대로 풀기 위해 정리하려고 한다. 항상 왜 그런지를 알고 어떻게 그렇게 되는지에 대한 절차를 알아야 기억에 오래 남는다. 무작정 외워선 방대한 프로그래밍 지식을 오래 가지고 갈 수 없다고 생각한다. 본론 일단 왜 그런지에 앞서 한번 출력을 해보자 한다. 다음은 0.1과 0.2를 합한 값을 출력하는 프로그램이다. import java.math.BigDecimal; public class DoubleError.. 2022. 3. 22.
[Kotlin/코틀린] Android ArrayAdapter getView 안의 ConvertView 가 뭘까? 서론 (왜?) ListView를 처음 사용한다고 했을 때 가장 어색하고 예시코드를 안보고 코딩을 하는데 가장 어려움을 느꼈던 부분이 바로 Adpater 였다. ListView 사용시 클래스 파일로 ArrayAdpater를 상속하고 getView() 메소드를 재정의 하여 사용하게 되는데 이 getView()의 파라미터로 있는 convertView가 뭔지 또 ListView에서 어떤 역할인지 궁금하여 포스팅을 하려고 한다. 본론 Q : ListView는 왜 나왔을까? A : 많은 데이터를 스크롤이 가능하게 표현해주려고? Q : ScrollView 사용하면 되는거 아니야? A : 만약 수많은 데이터를 표시하려고 하면 OOP(Out of Memory : 메모리 용량초과)가 발생해. 만약, Facebook, In.. 2022. 3. 15.