ÀÚ¹Ù compareTo¸Þ¼Òµå ¼Ò½ºÄÚµå ±Ã±ÝÇÕ´Ï´Ù.

   Á¶È¸ 3948   Ãßõ 0    

 package package_java.lang;

public class StringTest4 {
   
    static String array1[] = {"IMF", "Computer","JAVA"};
   
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("=====정렬 전 데이터=====");
        for(String s : array1)
            System.out.print(s + " ");
        System.out.println();
        System.out.println("=====정렬 후 데이터=====");
        for(int i = 0; i<array1.length; i++){
            for(int j = i+1; j<array1.length; j++){
                if(array1[i].compareTo(array1[j])>0)
                {
                    String t = array1[i];
                    array1[i] = array1[j];
                    array1[j] = t;
                   
                }
            }
            System.out.print(array1[i] + " ");
        }
    }

질문1. i값이 1이고 j값이 2일 때 if안에서만 순서가 바뀌는건가요? 즉 if안에서만 바뀌는것이지 위에 생성한 배열에도 영향을 주는가요?

if문 이전 배열이 {"IMF", "Computer","JAVA"}이 if문 조건이 충족하면 {"IMF", "JAVA", "Computer"}로 바뀌는건가요?

질문2. 

첫번째로 computer를 찍고나서 어떻게 imf하고 java가 어떻게 정렬이된건가요? 그냥 array1[0], [1]을 나열한건가요?

질문3. 위의 문장에서 이중for문과 if문이 조건이 성립이되어야 print할 수 있는거죠? 하나라도 만족하지 못하면 print를 하지 않는 것이고요.


ps. 자바 초보자입니다. 아직 반복문, 조건문이 겹쳐있으면 약간 헷갈립니다. 도움주시면 감사하겠습니다.

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
1. º¯¼öÀÇ ¶óÀÌÇÁ ŸÀÓÀ» ¾Ë¾Æ¾ß ÇÕ´Ï´Ù.
  ±âº»ÀûÀ¸·Î ºí·°¿¡¼­ ¼±¾ðµÈ º¯¼ö´Â ºí·°¿¡¼­¸¸ À¯È¿..
  ±×·¯¹Ç·Î  array1Àº if ¹® ¹Û¿¡¼­ ¼±¾ðµÈ Àü¿ªº¯¼ö À̹ǷΠ¼Ò½º ¾îµð¼­µç ¿µÇâÀ» ¹Þ½À´Ï´Ù.

2.  ·ÎÁ÷Àº iÀÇ À§Ä¡¿¡ ºÎÅÍ ³¡±îÁö °ªÁß Á¦ÀÏ ÀÛÀº °ÍÀ»  iÀÇ À§Ä¡¿¡ ÀúÀå Çϴ°ÍÀÔ´Ï´Ù.
±×·¯¹Ç·Î 1¹ø°  Computer, 2 ¹ø° IMF, 3¹ø° JAVA°¡ ÂïÈ÷´Â°ÍÀÔ´Ï´Ù.

3. À§ ¼Ò½ºÀÇ print¹®Àº if¶û ÀüÇô »ó°ü ¾øÀÌ for¸¦ ¸¸Á·ÇÒ¶§ ÂïÈü´Ï´Ù.

*********
"a".compareTo("a") À϶§´Â 0
"a".compareTo("b") À϶§´Â 1
"b".compareTo("a") À϶§´Â -1


QnA
Á¦¸ñPage 1785/5686
2014-05   4972281   Á¤ÀºÁØ1
2015-12   1508597   ¹é¸Þ°¡
2009-12   6292   ÇÑ°æµµ
2005-04   6292   °­°æ¸ð
2017-01   6291   Â÷³ÝÄÄÇ»ÅÍ
2016-02   6291   Á¦½ºÆÛÁî
2015-09   6291   ¼§±×¸®¶ó
2005-03   6291   ±èµµ±Õ
2016-08   6291   Ŭ·¡½Ä
2021-01   6291   Ä«ÀÌÁ¦¸°
2015-12   6291   ¸ø»ý±ä¾Ö
2016-12   6290   °¡¶÷ÀÌ´ç1
2005-01   6290   ¹ÚÂù¹Î
2008-07   6290   ¹Úâ¹ü
2012-08   6290   ±è°Ç¿ì
2013-11   6290   ¹Ú¼º¸¸
2011-02   6290   ¹ÚÁ¾È£
2011-04   6290   ±èÀ±¼ú
2012-06   6290   À¯È£ÁØ
2011-06   6290   ¹«¾Æ
2005-05   6290   Á¤¿µ±³
2006-05   6290   ÀåÁø¼ö