2014년 7월 21일 월요일

자바 연산자[자바개발자교육/자바교육/자바강좌/자바,Spring교육잘하는곳/자바,spring교육추천/자바실무교육/JAVA/JAVA교육/JAVA스프링학원/JAVA실무교육]

산술연산자(Arithmetic Operator)  
관계연산자(Relational Operator)  
논리연산자(Logical Operator)  
비트연산자(Bitwise Operator)  
조건연산자(Conditional Operator)  
할당연산자(Assignment Operator)  
산술연산자 
          - 수치적인 연산을 하기 위한 연산자  
          - 단항연산자 
              ++(전위) ++a  먼저 a에 1을 더하고 명령을 수행 
              --(전위) –a    먼저 a에서 1을 빼고 명령을 수행 
              ++(후위) a++  먼저 명령을 수행하고 1을 변수에 더함 
              --(후위) a--  먼저 명령을 수행하고 1을 변수에서 뺌 
              -          -b      현재 변수의 값의 부호를 바꾼다. 
              +          +b      변수의 현재 부호를 그대로 유지한다. 
          - 이항연산자    
              +,-,*,/,% 


class Operation1 { 
    public static void main(String[] args) { 
        // 변수의 선언과 초기화 
        int a = 4, b = 2, c = -3; 
        // 후위 연산자 ++ 
        System.out.println("a = " + a++); 
        // 전위 연산자 ++ 
        System.out.println("a = " + ++a); 
        // 후위 연산자 -- 
        System.out.println("b = " + b--); 
        // 전위 연산자 ++ 
        System.out.println("b = " + --b);      
        // 부호 연산자 - 
        System.out.println("-a = " + -a);        


// 부호 연산자 + 
System.out.println("+c = " + +c); 
System.out.println("a = " + a); 
System.out.println("b = " + b); 
c = a+++b; 
 System.out.println("a+++b = " + c ); 
 System.out.println("a = " + a++); 
 //이항연산 
 a=9;b=3;c=0; 
 System.out.println("a + b =" + (a+b));  
 System.out.println("a - b =" + (a-b));  
 System.out.println("a * b =" + (a*b));  
 System.out.println("a / b =" + (a/b));  
 System.out.println("a % b =" + (a%b));  
                } 
              } 


관계연산자 
          - 좌변과 우변의 관계를 파악하여 그 관계에 따라 참과 거짓의 값을 연산 
            >      op1 > op2      op1이 op2보다 크면 결과값은 true 
          <        op1 < op2      op1이 op2보다 작으면 결과값을 true 
            >=    op1 >= op2    op1이 op2보다 크거나 같으면 true 
          <=      op1 <= op2    op1이 op2 보다 작거나 같으면 true 
          ==      op1 == op2    op1과 op2가 같으면 true 
          !=      op1 != op2      op1 과 op2 가 같지 않으면 true 
          


class Operation2 { 
  int state; 
  public static void main(String[] args) { 
Operator2 o1, o2, o3, o4; 
o1 = new Operator2(); 
o1.state=1; 
            o4 = new Operator2(); 
o4.state=2; 

            o2 = o1;  //객체의 참조값이 저장됨 
o3 = o2; 
if (o1 == o3) { System.out.println("o1과 o3는 같은 Object"); } 
else {  System.out.println("o1과 o3는 다른 Object"); } 
if (o1.equals(o4)) { System.out.println("o1과 o4는 같은 Object"); } 
else {      System.out.println("o1과 o4는 다른 Object"); } 
  } 



논리연산자 
    - 좌변과 우변의 논리적 관계를  나타내기 위한 연산자 
    &&  op1 && op2    op1과 op2가 둘다 참이면 true, op1이 참인 경우에만 op2를 평가  
    ||    op1 || op2      op1과 op2 둘 중 하나라도 참이면 true,  
                                  op1이 거짓인 경우에만 op2를 평가  
    !    ! op              op를 부정  
    &    op1 & op2      op1과 op2가 둘다 참이면 true, op1과 op2 모두 평가  
    |      op1 | op2        op1과 op2 둘 중 하나라도 참이면 true, op1과 op2 모두 평가  

    count = 0; 
    if ((++value%2==0) & ++count < limit)  
          이경우  & 대신 &&을 사용하면 왼쪽이 참인경우에만 count가 증가… 

          if (count > 0 && total/count > 5)  
          이경우  && 대신 &을 count에 혹시라도 0이 들어오면 o으로 나누는 형태가 되므로 
          오류발생 




비트연산자 
          &      op1 & op2          op1과 op2의 값을 비트 AND 연산한다. 
          |        op1 | op2          op1과 op2의 값을 비트 OR 연산한다. 
          ^        op1 ^ op2          op1과 op2의 값을 비트 XOR 연산한다. 
          >>      op1 >> op2        op1을 op2만큼 우측으로 시프트 
        <<        op1 << op2        op1을 op2만큼 좌측으로 시프트 
        >>>      op1 >>> op2      op1을 op2만큼 우측으로 시프트 
                  (시프트된 자리에 언제나 0이 삽입) 
          ~      ~op1                  보수(Complement) 
조건연산자 
        - 피연산자를 3개 취하므로 3항 연산자라고도 한다. 
        - 논리식 ? 표현식1 : 표현식2 
          age = yourage > myage? yourage : myage 

          


public class ConditionOperation { 
public static void main(String[] args) { 
int nHats=1; 
System.out.println("I Have "+nHats + " hat" + (nHats==1?".":"s.")); 

nHats++; 
System.out.println("I Have "+nHats + " hat" + (nHats==1?".":"s.")); 




할당연산자 
          +=          op1 += op2            op1 = op1 + op2 
          -=          op1 -= op2            op1 = op1 - op2 
          *=          op1 *=  op2            op1 = op1 * op2 
          /=          op1 /= op2              op1 = op1 / op2 
          %=          op1 %= op2            op1 = op1 % op2 
          &=          op1 &= op2            op1 = op1 & op2 
          |=          op1 |= op2              op1 = op1 | op2 
          ^=          op1 ^= op2              op1 = op1 ^ op2 
        <<=          op1 <<= op2            op1 = op1 << op2 
          >>=        op1 >>= op2            op1 = op1 >> op2 
          >>>=      op1 >>>= op2          op1 = op1 >>> op2 


public class AllignOperation { 
    public static void main(String[] args) {        
        int i = 1; 
        // 할당연산자의 사용 
        System.out.println(i += 1); 
        System.out.println(i -= 3); 
        System.out.println(i *= 5); 
        System.out.println(i /= i); 
        System.out.println(i %= 2); 
        System.out.println(i &= 3); 
        System.out.println(i |= 10); 
        System.out.println(i ^= 4); 
        System.out.println(i <<= 1); 
        System.out.println(i >>= 2); 
        System.out.println(i >>>= 24); 
    } 



오라클자바커뮤니티교육센터, 개발자전문교육, 개인80%환급 
www.oraclejavacommunity.com


평일주간(9:30~18:10) 개강
(7/28)[기업100%환급]C#4.0,WinForm,ADO.NET프로그래밍
(7/28)[기업100%환급]안드로이드개발자과정
(8/04)[기업100%환급]자바기초에서 JDBC, Servlet/JSP까지 
(8/04)[기업100%환급]PL/SQL,ORACLE HINT,TUNING
(8/08)[기업100%환급]SQL기초에서 Schema Object까지
(8/08)[기업100%환급]Spring ,MyBatis,Hibernate실무과정
(8/11)[채용예정교육]오라클자바개발잘하는신입뽑기프로젝트,교육전취업확정

평일야간(19:00~21:50) 개강
(7/22)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(7/24)SQL기초에서실무까지
(7/29)안드로이드개발자과정
(7/29)Spring3.X, MyBatis, Hibernate실무과정
(8/04)웹퍼블리싱 마스터
(8/05)MyBatis3.X, Hibernate4.X ORM실무과정
(8/08)닷넷(C#,Network,ADO.NET,ASP.NET)마스터과정

주말(10:00~17:50) 개강
(7/26)Spring3.X, MyBatis, Hibernate실무과정
(7/26)개발자를위한PLSQL,SQL튜닝,힌트
(8/02)C#,ASP.NET마스터
(8/02)웹퍼블리싱 마스터
(8/02)SQL초보에서 Schema Object까지
(8/02)MyBatis3.X, Hibernate4.X ORM실무과정
(8/09)안드로이드개발자과정
(8/09)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(8/23)JAVA,Network&WEB&Framework(자바기초에서웹스프링까지)

주말저녁(18:30~22:20) 개강
(8/02)JAVA,Network&WEB&Framework
(8/09)SQL기초에서실무까지

댓글 없음:

댓글 쓰기