본문 바로가기

분류 전체보기277

[Android Studio] 레이아웃의 위젯 Activity에 연결하기 위젯 -> 화면을 구성하는 모듈, 컴포넌트같은 UI를 의미한다. 연결하는 법 public class MainActivity extends AppCompatActivity { // 만든 위젯들의 ID 값을 변수로 저장 Button button; ImageView imgDice1; ImageView imgDice2; MediaPlayer mp; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 화면에서 만든 버튼과 이미지뷰를 가져와서 연결한다 button = findViewById(R.id.button); .. 2023. 12. 21.
[Android Studio] APP 이름 바꾸기, 아이콘 만들기 APP(앱) 이름 바꾸는 방법 바꿀이름 -> Android Studio의 res폴더 -> values폴더 -> strings.xml 파일에서 위 태그 안에 바꿀 이름을 넣으면 된다. 어플 아이콘 만드는 방법 Android Studio의 res 마우스 우측 클릭 -> New > Image Asset Foreground Layer탭의 Source Asset -> Image 체크 -> Path에 준비한 이미지를 업로드 2023. 12. 21.
[React] Redux 라이브러리 설치 및 사용법 Redux 라이브러리를 쓰는 이유 중앙 집중화된 상태 관리: Redux는 애플리케이션의 상태를 하나의 중앙 저장소에 저장하고 관리합니다. 이를 통해 상태의 변화를 예측 가능하게 하고, 디버깅 및 테스팅이 쉬워집니다. 예측 가능한 상태 변화: Redux는 상태 변화를 예측 가능한 방식으로 처리하며, 이는 액션(Action)에 의해 상태가 어떻게 변경되는지를 명시적으로 정의합니다. 이로써 애플리케이션의 동작을 추적하고 이해하기 쉬워집니다. 단방향 데이터 흐름: Redux는 단방향 데이터 흐름을 따릅니다. 액션 → 리듀서 → 상태 업데이트 순서로 데이터가 흐르기 때문에 데이터 흐름이 일관되고 예측 가능하며 디버깅이 용이합니다. 컴포넌트 간 상태 공유: Redux는 컴포넌트 간에 상태를 공유하기 쉽게 만들어줍니.. 2023. 12. 20.
[Android Studio] Android 설치 및 프로젝트 생성하는 방법 1. Android Studio 설치 https://developer.android.com/studio?hl=ko 2. 가운데 있는 Empty Views Activity 클릭 후 next 3. Language는 Java로 하고 Finish 버튼 클릭하면 생성된다. 2023. 12. 20.
[Java] HashMap 설명과 여러 함수들 put(), size(), get(), replace(), remove(), clear(), isEmpty() HashMap 특징 키-값 쌍 저장: HashMap은 키와 값의 쌍을 저장하는데 사용됩니다. 각 키는 고유해야 하며, 키에 해당하는 값은 중복될 수 있습니다. Null 허용: HashMap은 키와 값에 null을 허용합니다. 즉, null 값을 가진 키나 값이 저장될 수 있습니다. 빠른 검색 속도: 해시 테이블을 기반으로 하기 때문에 키를 사용한 검색, 삽입, 삭제 연산이 평균적으로 O(1)의 시간 복잡도를 가집니다. 순서 보장 안됨: HashMap은 요소들의 순서를 보장하지 않습니다. 따라서 특정 순서로 요소에 접근하려면 LinkedHashMap과 같은 순서를 보장하는 자료구조를 사용해야 합니다. HashMap phoneMap = new HashMap(); -> HashMap 인스턴스 생성 후 여러 함.. 2023. 12. 20.
[Java] ArrayList의 여러 함수들 size(), add(), get(), set(), remove(), clear(), isEmpty() 배열의 단점 -> 배열 안 요소의 개수에 제한이 있다. String[] nameArray = new String[10]; ArrayList nameList = new ArrayList(); -> 그러므로 ArrayList를 사용한다. 요소 추가하는 함수 add() nameList.add("홍길동"); nameList.add("김나나"); nameList.add("전청조"); 개수 확인하는 함수 size() System.out.println(nameList.size()); // 결과 : 3 요소(데이터) 억세스 하는 함수 get() System.out.println(nameList.get(0)); // 출력 : 홍길동 모든 요소를 보려면 for문 사용 for (int i=0; i set()의 첫번째 인자 .. 2023. 12. 20.
[Java] 문자열의 크기를 비교하는 compareTo(), 문자열이 같은지 확인하는 equals() 문자열의 크기를 비교하는 함수 compareTo() str1 = "홍길동"; str2 = "김나나"; int compare = str1.compareTo(str2); System.out.println(compare); // 결과 : 10253 정수가 0보다 크면, 왼쪽 문자열이 더 큰 것 정수가 0보다 작으면, 오른쪽 문자열이 더 큰 것 정수가 0이면, 두 문자열은 같다는 뜻이다. 문자열이 같은지 확인하는 함수 equals() str1 = "홍길동"; str2 = "김나나"; Boolean bool = str1.equals(str2); System.out.println(bool); // 결과 : false -> 반환 타입은 Boolean이다. 2023. 12. 20.
[Java] 특정 문자열의 위치 인덱스 알려주는 indexOf(), 문자열 포함 여부 알려주는 contains() 특정 문자열의 위치 인덱스 알려주는 indexOf() str1 = "Abc@Naver.com"; int index = str1.indexOf("@"); System.out.println(index); // 출력 : 3 문자열 포함 여부 알려주는 contains() str1 = "Abc@Naver.com"; Boolean bool = str1.contains("Naver"); System.out.println(bool); // 출력 : true -> 반환 타입은 Boolean이다. 2023. 12. 20.
[Java] 문자열의 모든 요소를 소문자, 대문자로 바꿔주는 toLowerCase(), toUpperCase() 모든 요소를 소문자로 바꿔주는 toLowerCase(), 대문자로 바꿔주는 toUpperCase() str1 = "Abc@Naver.com"; System.out.println(str1.toLowerCase()); System.out.println(str1.toUpperCase()); // 출력 : abc@naver.com , ABC@NAVER.COM 2023. 12. 20.
[Java] 문자열의 왼쪽 끝이나 오른쪽 끝에 있는 공백 제거하는 trim() 문자열의 왼쪽 끝이나 오른쪽 끝에 있는 공백 제거하는 함수 trim() str1 = " Abc@Naver.com "; str1 = str1.trim(); System.out.println(str1); // 출력 : Abc@Naver.com 2023. 12. 20.