'memo' 카테고리의 다른 글
ArrayList 참고글 (0) | 2020.10.12 |
---|---|
public static void (0) | 2020.10.12 |
이클립스 단축키 (0) | 2020.10.07 |
자바 이름 규칙 (0) | 2020.10.05 |
아스키코드 / 아스키코드표 (0) | 2020.09.29 |
git ignore.io (0) | 2020.09.28 |
자바 환경설정 / 개발환경 구성 절차 ncs (0) | 2020.09.28 |
출처: https://bumcrush.tistory.com/182 [맑음때때로 여름]
ArrayList 참고글 (0) | 2020.10.12 |
---|---|
public static void (0) | 2020.10.12 |
이클립스 단축키 (0) | 2020.10.07 |
자바 이름 규칙 (0) | 2020.10.05 |
아스키코드 / 아스키코드표 (0) | 2020.09.29 |
git ignore.io (0) | 2020.09.28 |
자바 환경설정 / 개발환경 구성 절차 ncs (0) | 2020.09.28 |
1. 10으로 나눈 나머지를 구하고 다시 10으로 나눠주는 방식을 취한다.
public static void main(String[] args) {
int num = 12345;
int sum = 0;
while (num > 0) {
sum += num%10;
num = num/10;
}
System.out.println("sum="+sum);
}
[실행결과]
15
2. 응용 / 회문수 구하기
public static void main(String[] args){
int number = 12321;
int tmp = number;
int result =0; // 변수 number를 거꾸로 변환해서 담을 변수
while(tmp !=0) {
result*=10;
result+=tmp%10;
tmp = tmp/10;
}
if(number == result)
System.out.println( number + "는 회문수 입니다.");
else
System.out.println( number + "는 회문수가 아닙니다.");
} // main
}
string 문자열을 역순으로 출력하기 / 거꾸로 출력하기 (0) | 2020.10.13 |
---|---|
nextLine이 다음 줄 값을 받지 않을 때 (0) | 2020.10.12 |
[메소드] 구슬게임 (0) | 2020.10.07 |
num++; 의 위치에 따른 오답 (0) | 2020.10.06 |
[float] 소수점 N째 자리에서 반올림하기 (0) | 2020.10.05 |
예외처리 연습 : 두가지 범위 설정하기 [ 영문과 숫자만 입력가능 / ID ] (0) | 2020.09.29 |
예외처리 연습 : 숫자만 입력하게 하기 (아스키코드 이용) / boolean, while, for, if (0) | 2020.09.24 |
답은 199가 맞다.
그런데 마지막에 num++;을 하고 while을 빠져나와서 두번째꺼는 200으로 오답
int num=0;
int sum=0;
while(sum<100) {
num++;
if(num%2!=0) {
sum+=num;
}else {
sum-=num;
}
System.out.println(num + " " + sum);
}
System.out.println(num); // num=199
int num=1; // 여기도 바꿨었음
int sum=0;
while(sum<100) {
if(num%2!=0) {
sum+=num;
}else {
sum-=num;
}
System.out.println(num + " " + sum);
num++;
}
System.out.println(num); // num=200 틀린답
nextLine이 다음 줄 값을 받지 않을 때 (0) | 2020.10.12 |
---|---|
[메소드] 구슬게임 (0) | 2020.10.07 |
각 자릿수의 숫자 뽑아내기 (0) | 2020.10.07 |
[float] 소수점 N째 자리에서 반올림하기 (0) | 2020.10.05 |
예외처리 연습 : 두가지 범위 설정하기 [ 영문과 숫자만 입력가능 / ID ] (0) | 2020.09.29 |
예외처리 연습 : 숫자만 입력하게 하기 (아스키코드 이용) / boolean, while, for, if (0) | 2020.09.24 |
[ 랜덤함수 ] 숫자찾기 게임 만들기 (0) | 2020.09.24 |
소수점 셋째자리에서 반올림을 하려면 다음의 과정을 거쳐야한다.
1. 값에 100을 곱한다.
-> 37.77778 * 100
2. 1의 결과에 0.5를 더한다.
-> 3777.778 + 0.5 → 3778.278
3. 2의 결과를 int타입으로 변환한다.
-> (int)3778,278 → 3778
4. 3의 결과를 100f로 나눈다. (100으로 나누면 소수점 아래의 값을 잃는다.)
-> 3778 / 100f → 37.78
[메소드] 구슬게임 (0) | 2020.10.07 |
---|---|
각 자릿수의 숫자 뽑아내기 (0) | 2020.10.07 |
num++; 의 위치에 따른 오답 (0) | 2020.10.06 |
예외처리 연습 : 두가지 범위 설정하기 [ 영문과 숫자만 입력가능 / ID ] (0) | 2020.09.29 |
예외처리 연습 : 숫자만 입력하게 하기 (아스키코드 이용) / boolean, while, for, if (0) | 2020.09.24 |
[ 랜덤함수 ] 숫자찾기 게임 만들기 (0) | 2020.09.24 |
[ Break 문 ] 이중for문 탈출 (0) | 2020.09.24 |
대소문자가 구분되며 길이에 제한이 없다.
예약어를 사용해서는 안 된다.
숫자로 시작해서는 안 된다.
특수문자는 '_' 와 '$'만을 허용한다.
파스칼 표기법 (PascalCase)과 카멜 표기법(camelCase)를 사용한다.
PascalCase : 모든 단어에서 첫 번째 문자는 대문자이며 나머지는 소문자이다.
camelCase : 최초에 사용된 단어를 제외한 첫 번째 문자가 대문자이며 나머지는 소문자이다.
반의어는 반드시 대응하는 개념으로 사용해야 한다.
1. 패키지(Package) 명명 규칙
패키지명은 표준 패턴을 따라야 한다.
Ex) [com].[Company].[Project].[TopPackage].[LowerPackage]
패키지명은 가급적 한 단어의 명사를 사용한다.
Ex) 좋은 예 : com.nexon.sudden.member.object
Ex) 나쁜 예 : sudden.memberObject
2. 클래스(Class) 명명 규칙
클래스명에는 파스칼을 사용한다.
Ex) public class HelloWorld {}
인터페이스에는 특별한 접두사나 접미사를 사용하지 않고 파스칼을 사용한다.
Ex) public interface Animal {}
인터페이스를 구현한 클래스에는 특별한 접두사나 접미사를 사용하지 않고 파스칼을 사용한다.
Ex) public class Tiger implements animal{}
추상 클래스에는 특별한 접두사 접미사를 사용하지 않고 파스칼을 사용한다.
Ex) public abstract class Animal {}
3. 메소드(Method) 명명 규칙
메소드명에는 파스칼 표기법을 사용한다.
Ex) public void SendMessage(String message) {}
속성에 접근하는 메소드명의 접두사는 'get','set'을 사용한다.
Ex) public void setDisplayName
Ex) public void getDisplayName
데이터를 조회하는 메소드명의 접두사는 find를 사용한다.
Ex) public void findData(String data){}
데이터를 입력하는 메소드명의 접두사는 input을 사용한다.
Ex) public void inputData(HashMap data){}
데이터를 변경하는 메소드명의 접두사는 modify를 사용한다.
Ex) public void modifyData(HashMap data){}
데이터를 삭제하는 메소드명의 접두사는 delete를 사용한다.
Ex) public void deleteData(String data){}
데이터를 초기화 하는 메소드명의 접두사는 initialize을 사용한다.
Ex) public void initData(String data){}
반환값의 타입이 boolean인 메소드는 접두사로 is를 사용한다.
Ex) public void isData(String Data){}
데이터를 불러오는 메소드명의 접두사는 load를 사용한다.
Ex) public void loadData(){}
데이터가 있는지 확인하는 메소드명의 접두사는 has를 사용한다.
Ex) public void hasData(){}
보다 지능적인 set이 요구될때 사용하는 메소드명의 접두사는 register를 사용한다.
Ex) public void registerAccount(){}
새로운 객체를 만든뒤 해당 객체를 리턴해주는 메소드명의 접두사는 create를 사용한다.
Ex) public void createAccount(){}
해당 객체를 다른 형태의 객체로 변환해주는 메소드명의 접두사는 to를 사용한다.
Ex) public void toString(){}
해당 객체가 복수인지 단일인지 구분하는 메서드명의 접미사는 s를 사용한다.
Ex) public void getMembers(){}
B를 기준으로 A를 하겠다는 메소드명의 전치사는 By를 사용한다.
Ex) public void getUserByName(String name){}
반환값의 타입이 boolean인 메소드는 접두사로 is를 사용한다.
Ex) public void isData(String Data){}
데이터를 불러오는 메소드명의 접두사는 load를 사용한다.
Ex) public void loadData(){}
데이터가 있는지 확인하는 메소드명의 접두사는 has를 사용한다.
Ex) public void hasData(){}
보다 지능적인 set이 요구될때 사용하는 메소드명의 접두사는 register를 사용한다.
Ex) public void registerAccount(){}
새로운 객체를 만든뒤 해당 객체를 리턴해주는 메소드명의 접두사는 create를 사용한다.
Ex) public void createAccount(){}
해당 객체를 다른 형태의 객체로 변환해주는 메소드명의 접두사는 to를 사용한다.
Ex) public void toString(){}
해당 객체가 복수인지 단일인지 구분하는 메서드명의 접미사는 s를 사용한다.
Ex) public void getMembers(){}
B를 기준으로 A를 하겠다는 메소드명의 전치사는 By를 사용한다.
Ex) public void getUserByName(String name){}
4. 변수(Variable) 명명 규칙
변수와 메소드의 파라미터에는 카멜표기법을 사용한다.
변수에 약어를 사용하지 않고 모든 의미를 충분히 담는다.
한 글자로 된 이름을 사용하지 않는다.
선언된 지점에서 초기화하며, 가능한 사용범위를 최소화 한다. 숫자 0 레퍼런스 null
반복문에서 인덱스로 사용할 변수는 i,j,k 등으로 사용한다.
Ex) for(int i = 0; i < 10; i++){}
지역변수와 멤버변수(전역변수)는 변수명 앞에 밑줄(_)을 사용하여 구별한다.
boolean타입의 변수는 접두사로 is를 사용한다 Ex) isCheck
public static void (0) | 2020.10.12 |
---|---|
이클립스 단축키 (0) | 2020.10.07 |
p s v (0) | 2020.10.07 |
아스키코드 / 아스키코드표 (0) | 2020.09.29 |
git ignore.io (0) | 2020.09.28 |
자바 환경설정 / 개발환경 구성 절차 ncs (0) | 2020.09.28 |
자바클래스 (0) | 2020.09.28 |
- 메서드의 종료
1. 메서드의 블럭{}의 끝에 도달했을 때
2. [return]문을 만났을때 메서드 종료
- 메서드와 반환값
1. 반환값이 없는 경우 retrun;만 써주면된다.
// 반환 값이 있는 메서드는 모든 경우에 return문이 있어야 한다.
2. 반환값이 있는 경우 return 반환값;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
int max(int a, int b){
if(a>b)
return a; // a<b일때 return값이 없다. NO!
int max(int a, int b){
if(a>b)
return a;
else
return b; // a<b일때 return값이 없으므로 추가해줌
}
int max(int a, int b){
int result=0;
if(a>b)
result=a;
else
result=b;
return result // 리턴을 여러개 쓰면 에러나기 쉬우므로 이 방법을 애용하자
}
|
cs |
반환값이 있는 경우 return 반환값;
오버로딩 : 같은 이름의 메서드 정의.
메소드의 매개변수 선언(개수 또는 자료형)이 다르면 메소드 오버로드가 성립한다.
객체지향 : class 생성 (0) | 2020.10.07 |
---|---|
생성자 / 초기화 메소드 (0) | 2020.10.07 |
[변수] 선언 위치에 따른 변수의 종류 / 클래스 변수 / 인스턴스 변수 / 지역 변수 (0) | 2020.10.07 |
이항연산자의 특징 / 타입에 따른 계산 오류 (0) | 2020.09.29 |
변수의 기본값과 초기화 (0) | 2020.09.28 |
리터럴과 접미사 (0) | 2020.09.28 |
파이널 / 상수 / final / 변수 고정 (0) | 2020.09.28 |
생성자 / 초기화 메소드 (0) | 2020.10.07 |
---|---|
[변수] 선언 위치에 따른 변수의 종류 / 클래스 변수 / 인스턴스 변수 / 지역 변수 (0) | 2020.10.07 |
메소드 / 메서드 (0) | 2020.10.05 |
변수의 기본값과 초기화 (0) | 2020.09.28 |
리터럴과 접미사 (0) | 2020.09.28 |
파이널 / 상수 / final / 변수 고정 (0) | 2020.09.28 |
실수 연산의 오류 (0) | 2020.09.28 |
1.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
Scanner sc = new Scanner(System.in);
String id;
String small;
boolean b;
while(true) {
b=false;
System.out.print("ID 입력 : ");
id=sc.next();
small=id.toLowerCase(); // 대소문자 구별을 위해 소문자로 바꿔줌
for(int i=0 ; i<small.length() ; i++) {
char a = small.charAt(i);
int asc = (int)a; // 아스키코드로 변경
if ( asc<97 || asc>122 ) {
System.out.println("영문/숫자만 입력하세요");
b=true;
break;
}
else if (asc>48 || asc<58) { // 숫자는
b=false;
break;
}
}
if(b==false) {
System.out.println("입력된 ID는 " + id);
break;
}
|
cs |
2.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | // 영어만 입력받는 거 만들어보기 + 숫자까지 (영문과숫자로이루어진id입력받기) // ID Scanner sc = new Scanner(System.in); String id; String small; boolean b; while(true) { b=false; System.out.print("ID 입력 : "); id=sc.next(); small=id.toLowerCase(); // 대소문자 구별을 위해 소문자로 바꿔줌 for(int i=0 ; i<small.length() ; i++) { char a = small.charAt(i); int asc = (int)a; // 아스키코드로 변경 if ((96<asc && asc<123) || (47<asc && asc<58) ) { b=false; break; } else { System.out.println("영문/숫자만 입력하세요"); b=true; break; } } if(b==false) { System.out.println("입력된 ID는 " + id); break; } } | cs |
각 자릿수의 숫자 뽑아내기 (0) | 2020.10.07 |
---|---|
num++; 의 위치에 따른 오답 (0) | 2020.10.06 |
[float] 소수점 N째 자리에서 반올림하기 (0) | 2020.10.05 |
예외처리 연습 : 숫자만 입력하게 하기 (아스키코드 이용) / boolean, while, for, if (0) | 2020.09.24 |
[ 랜덤함수 ] 숫자찾기 게임 만들기 (0) | 2020.09.24 |
[ Break 문 ] 이중for문 탈출 (0) | 2020.09.24 |
[ for문 / while문 ] 같은 문제 풀기 (0) | 2020.09.24 |
이클립스 단축키 (0) | 2020.10.07 |
---|---|
p s v (0) | 2020.10.07 |
자바 이름 규칙 (0) | 2020.10.05 |
git ignore.io (0) | 2020.09.28 |
자바 환경설정 / 개발환경 구성 절차 ncs (0) | 2020.09.28 |
자바클래스 (0) | 2020.09.28 |
https://pridiot.tistory.com/24 (0) | 2020.09.23 |
toLowerCase(); 소문자로 바꿔주는 함수
toUpperCase() ; 대문자로 바꿔주는 함수
대문자를 소문자로
ex) var a = document.frm.object_name.value;
var a = a.toLowerCase();
alert(a);
소문자를 대문자로
ex) var b = document.frm.object_name.value;
var b = b.toUpperCase();
alert(b);
[자바] String 관련 함수/메소드 (0) | 2020.10.13 |
---|---|
[자바] 비어있는지 확인하는 함수 / isEmpty() (0) | 2020.10.12 |
[자바] 앞 뒤 스페이스 / 공백 제거 함수 : trim() (0) | 2020.10.12 |
[자바] Math.abs() / 절대값 함수 (0) | 2020.10.07 |
[자바] String을 Int로 , Int를 String으로, String으로 변환 parseint / tostring (0) | 2020.09.24 |
[자바] 랜덤함수 / Math.random() (0) | 2020.09.24 |
[자바] Equals (0) | 2020.09.23 |