void main(){ List even = [ 2, 4, 6, 8, ]; List add = [ 1, 3, 5, 7, ]; // cascading operator // ... // 여러개의 리스트를 하나로 합칠때 많이 사용함 // 리스트 안에 값들을 풀어 넣는 역할을 함 print([even, add]); print([...even, ...add]); // 하나에 리스트 안에 값들이 펼쳐짐 // 즉 리스트를 없애고 새로운 리스트에 값들을 넣는 것임 // 그리고 이렇게 생성한 리스트는 완전히 새로운 리스트가 됨 print(even); print([...even]); print(even == [...even]); // false가 나옴 }
/* 함수형 프로그래밍에 기본은 형변환임 보통 리스트, 멥, 셋 같은 자료형을 사용함 */ void main(){ List blackpink = ["로제", "지수", "리사", "제니","제니"]; print(blackpink); print(blackpink.asMap()); // map으로 변환 print(blackpink.toSet()); // Set 함수로 변환 // set 자료형은 중복을 허용 하지 않기 때문에 제니가 한번 출력됨 // 리스트로 Map 자료형 형변환 Map blackpinkMap = blackpink.asMap(); print(blackpinkMap.keys); print(blackpinkMap.values); /* (0, 1, 2, 3, 4) (로제, 지수, 리사, 제니, 제니..
시작하기 전에 Lint 관련 워닝 무시하는 법 Flutter 2.5 버전 이후 부터는 Lint라는게 생겨서 여러분에게 좋은 관습같은걸 알려주는데 초보땐 그런거 하나하나 지키면 복잡해서 코딩 포기하기 때문에 나중에 익숙해지면 씁시다. 그래서 analysis_options.yaml 파일 열어서 (analysis_options.yaml) rules: prefer_const_constructors: false avoid_print: false prefer_typing_uninitialized_variables: false prefer_const_constructors_in_immutables: false 이걸 추가해두고 시작하면 Lint 경고가 뜨지 않습니다. (주의) rules: 보다 prefer어쩌구: 가 ..
immutable 프로그래밍 : 한번 값들을 선언 하면 변경 할수 없도록 만드는것을 말함 이전시간에 작성한 생성자 글을 읽고 오면 이해하기 쉬울거임 Idol blackPink = Idol( "블랙핑크", ['지수', '제니', '리사', '로제'], ); 현제 // blackPink.name = "aloe_jk"; // 이렇게 이름을 변경 가능한데 // 개발자들은 이러한 상황을 선호하지 않음 처음 선언한 값을 절대로 변경할수 없도록 함 // 그래서 아래 클레스 변수에 final을 넣음 즉 변경할거면 새로 생성하도록 함 immutable 프로그래밍 하기전 클레스 작성 코드 class Idol{ String name ; List members; // 일반생성자 const Idol(this.name, this..
OOP 핵심개념 클래스로 설계도를 만들고 실제 사용하는건 인스턴스 라고 생각 하면 된다. ex 붕어빵 기기 => 붕어빵(크림맛, 녹차맛, 김치맛 ..... ) 클래안에 아래와 같은 것을 정의 하는 방법 // Idol class // name (이름) - 변수 // members (맴버들) - 변수 // sayHello (인사) - 함수 // introduce (맴버소개) - 함수 이게 가장 기본적인 클레스 구조임 생성자라는 것은 이전글에서 소개했듯이 함수에 파라미터의 값에 따라 반환 값과 내부에 값이 각각 달라지는 것 처럼 처럼 럼 클래스에서도 각각 값을 인스턴스에 대입해주기 위해서 사용하는 것인데 기본적으로 대부분의 객체지향 언어가 그렇듯이 클래스 명을 그대로 입력해서 들어오는 변수에 대한 정의 와 이..
파이썬을 하셨던 분이라면 List 개념을 알고 있으실거 같습니다 그리고 파이썬을 공부하지 않으신 분들은 배열이랑 비슷하게 보시면 됩니다.(자료구조 측면에서 좀 다름) List void main() { //list List blackpink = ["제니", "지수", "로제", "리사"]; // 제너릭 안에 어떤 타입을 넣을지 알려주는거 숫자 넣으면 에러 List numbers =[1,2,3,4,5,6]; print(blackpink); print(numbers); print(blackpink[0]); print(blackpink[1]); print(blackpink[2]); print(blackpink[3]); // print(blackpink[4]); index 값 보다 높으면 오류 남 print(bl..
dart 문법은 객체지향 언어를 한번쯤 접해보신 분이라면 쉽게 접근 하실수 있습니다. 저와 마찬가지로 플러터를 위해 dart 문법을 공부 하시는 분들이라면 빠르게 보고 넘어가시는걸 추천 드립니다. 변수에 값 담기 var name = "HELLO"; print(name); var name2 = "레드벨벳"; print(name); name = "플러터 프로그래밍"; print(name); 파이썬을 공부 하신분들이라면 var? 이게 뭐지 하실수 있을거 같은데 아래 자료형에 대하여 정리하면서 다시 한번 설명 하겠습니다. 자료형 정리 //정수 int number1 = 10; print(number1); int number2 = 15; print(number2); int number3 = -20; print(nu..