입력받기 : Scanner sc = new Scanner(System.in)
저걸 선언하고 sc.next() 등을 이용해서 입력받기 가능
stream :
public static void Q4()
{
Integer[] arr = new Integer[]{3,6,11,20,21,30};
Stream<Integer> stream = Arrays.stream(arr);
var a1 = stream.filter(x -> x%2==0);
var a2 = a1.map(x -> x + 10);
var a3 = a2.mapToInt(x -> x).sum();
stream = Arrays.stream(arr);
stream.filter(x->x%2==0).forEach(System.out::println);
stream = Arrays.stream(arr);
System.out.println();
stream.filter(x->x%2==0).map(x->x+10).forEach(System.out::println);
System.out.println(a3);
}
Q. 그냥 a1 a2 a3를 출력하면 되지 왜 출력하겠다고 저렇게 복잡하게 해놨나요
A.

정신이 나가버린 사상최초 1회용 자료형이라 2번째 쓰려하면 에러남
뒤에 filter(조건에 맞는거 추리기)
map(안에 적은대로 내용 바꾸기)
mapToInt(숫자로 바꾸고).sum(총합)
솔직히 이것도 쿼리로 where쓰고,
그 아래것도 솔직히 찾으면 뭐 없지않을거같은데
미쳐버린 1회용 자료형은 왜쓰는걸까
프로퍼티
public class Player {
private String name;
private int level;
private int exp;
public Player(String name, int level, int exp)
{
this.name = name;
this.level = level;
this.exp = exp;
}
public String GetName()
{
return this.name;
}
public void SetName(String name)
{
this.name = name;
}
public int GetExp()
{
return this.exp;
}
public void SetExp(int exp)
{
this.exp = exp;
}
public int GetLevel()
{
return this.level;
}
public void SetLevel(int level)
{
this.level = level;
}
}
getter setter어쩌구 하길래 당연히 관련 함수가 따로 있나보다 했더니 그런건 없고
그냥 자동 프로퍼티 안쓸때 깡으로 만드는거 그대로 한다.