본문 바로가기

분류 전체보기192

4. PrimitiveType & Array Primitive Type(원시 타입)은 정수, 실수, 문자, 논리 리터럴(float, int, string, boolean등) 등의 실제 데이터 값을 저장한다. Java에는 Reference Type(참조 타입)도 있는 큰 차이로는 전자는 변수에 값을 저장하고 후자는 메모리상에 객체가 있는 위치를 저장한다. Primitive Type은 반드시 사용전에 선언이 되어햐하며 비객체 타입이기 때문에 null값을 가질 수 없다. 실제 값을 저장하는 공간으로 stack 메모리에 저장된다. 참조형에서 재밌는건 크기 별로 선언 자유도(?)가 높은 것이다. 일례로 int = int + long는 불가능하지만 long = long + int는 가능하다. Array(배열)는 여러 개의 데이터를 하나의 이름으로 그룹핑해서 .. 2022. 11. 15.
3. Variable & DataType 변수(Variable)는 값을 저장할 수 있는 메모리 공간이다. 작성법은 type variable = something;이다 int intAmount = 40; String strCompanyName = "삼성"; 이렇게 작성하는 것을 변수의 초기화라 한다. 자료형(DataType)에는 기본형과 참조형이 있다. 기본형에는 boolean, char, byte, short, int, long, loat, double 이 있다. 이외의 모든 데이터 타입을 참조형이라고 한다. 참조형 변수는 변수의 타입으로 클래스의 이름을 사용하므로 클래스의 이름이 참조형 변수의 타입이라 볼 수 있다. Date today = new Date(); //Date()라는 클래스가 사용되었다. //따라서 today라는 참조형 변수의 타.. 2022. 11. 15.
2. MainMethod Java는 어플리케이션이 실행될 때 Main Method를 가장 먼저 실행한다. public class MainMathod { public static void main(String[] args) { //그리고 규격이 정해져있다. } } 이때, 사용된 public / static / void / String[ ] / args에 대해 알아보고자 한다. public은 외부의 접근을 제어하는 접근 제어자이다. 제어의 종류로 private, protected, public이 있으며 public의 의미는 어느곳에서든 해당 객체를 참조 가능하다는 것이다. static은 정적 함수를 의미한다. static으로 선언되면 메모리에 한번 할당되어 프로그램이 종료될 때 해체된다. 이는 메모리 영역에 static/heap영역.. 2022. 11. 15.
프로그래머스 level 0부터 시작하는 코딩테스트 - 아이스 아메리카노 class Solution { public int[] solution(int money) { int[] answer = new int[2]; int a = money/5500; int b = money - a*5500; answer[0] = a; answer[1] = b; return answer; } } 개인적으로는 하단의 코드를 선호한다. class Solution { public int[] solution(int money) { return new int[] { money / 5500, money % 5500 }; } } 2022. 11. 14.
프로그래머스 level 0부터 시작하는 코딩테스트 - 삼각형의 완성조건(1) import java.util.Arrays; class Solution { public int solution(int[] sides) { int answer = 0; Arrays.sort(sides); if (sides[0]+sides[1] > sides[2]) { return 1; } else { return 2; } } } 2022. 11. 14.
Java lambda 예시 package lec08.fileio04.lambda; public class lambda01 { public static void main(String[] args) { Calculate add = (x, y) -> x + y; Calculate substract = (int x, int y) -> x - y; Calculate multiply = (x, y) -> { return x*y; }; Calculate divide = (int x, int y) ->{ return x/y; }; int resultAdd = add.doCalc(100, 20); System.out.println("더하기: " + resultAdd); int resultSubs = substract.doCalc(100, 20);.. 2022. 11. 14.
Java Math 예시 2(BigInteger, BigDemical, equals, add, subtract, multiply, divide) package lec14.math02; import java.math.BigDecimal; import java.math.BigInteger; public class Math02 { public static void main(String[] args) { //BigInteger, BigDemical //long으로 커버가 불가능할때 BigInteger bigInteger = new BigInteger("1"); System.out.println(bigInteger); System.out.println("============================"); BigInteger one = BigInteger.ONE; BigInteger zero = BigInteger.ZERO; BigInteger ten.. 2022. 11. 14.
Java Math 예시 1(abs, ceil, floor, round, max, min, pow, sqrt, sin, cos, tan) package lec14.math02; public class Math01 { public static void main(String[] args) { double random = Math.random(); System.out.println(random); System.out.println("======================"); int random1 = (int) Math.random(); System.out.println(random1); System.out.println("======================"); for (int i = 0; i < 10; i++) { int intResult = (int) (Math.random() * 20); System.out.println(i + .. 2022. 11. 14.
Java String 예시 5(StringBuilder, StringBuffer, delete, reverse, replace, substring) 들어가기 앞서 읽어두면 좋은 자료 - string, stringBuffer, stringBuilder 차이 package lec13.StringLec.lec01; public class StringLec05 { public static void main(String[] args) { //stringbuffer는 multithread 동기화를 해줌 //따라서 데이터 오염을 막아줌(threadsafe) //아닐시에는 stringbuilder를 사용 StringBuilder sbd01 = new StringBuilder("Hello, world"); StringBuffer sbf01 = new StringBuffer("Nice day"); System.out.println(sbd01); System.out.p.. 2022. 11. 14.