카테고리

분류 전체보기 (68)
JAVA-기본 (7)
JAVA-AWT (24)
JAVA-클래스의 중요메소드 (23)
Object클래스 (4)
String클래스 (13)
StringBuffer클래스 (4)
나머지 중요 클래스 (2)
JAVA-람다식 (0)
Android Studio (7)
Python (1)
OpenCV (1)
AWS (0)
webrtc (0)
javascript (4)
처리방침 (1)
rss 아이콘 이미지

Search

'JAVA-클래스의 중요메소드/나머지 중요 클래스'에 해당되는 글 2건

  1. 2018.07.16 JAVA-중요02-Vector()
  2. 2018.07.04 JAVA-중요01-StringTokenizer()
반응형

이번 시간에는 Vector() 클래스에 대해서 알아보도록 하겠습니다.


Vector()


Vector() 는 동적인 배열을 정적인 크기를 가지고 있는 특징이 있습니다. 보통 배열을 선언할 때 배열의 개수를 제한하지만, Vector 클래스는 가변한다는 장점이 있습니다. 벡터는 배열을 저장하는 공간입니다.


아래는 Vector() 클래스의 생성자 입니다.


1.Vector()

:크기가 10인 벡터를 생성합니다. 크기를 넘어서면 10 증가합니다.

예를들어, 크기가 10인 벡터가 생성된다면 아래와 같습니다.

1번객체
2번객체
3번객체
4번객체
5번객체
6번객체
7번객체
8번객체
9번객체
10번객체

위의 10개의 크기를 가진 벡터는 10을 초과하면 20이 됩니다.


2.Vector(int 초기값)

:크기가 int 개수인 벡터를 생성합니다. 크기를 넘어서면 10 증가합니다.


3.Vector(int 초기값, int 증가값)

:초기의 크기가 int개수인 벡터를 생성하며 그 개수가 가득차면 int 증가값만큼 벡터가 증가합니다.



아래는 Vector() 클래스의 주요 메소드입니다.

addElement(객체)

:객체를 Vector에 저장합니다.


elementAt(int)

:몇번째 벡터값 요소를 확인합니다.


Capacity()

:벡터의 크기를 확인합니다.


아래의 예제를 통하여 더 Vector()에 대해서 살펴보도록 하겠습니다.

보통 Vector() 클래스는 <객체>를 사용하여 어떤 type의 객체를 생성할지 나타냅니다.

 package 기본01;

 

import java.util.Vector;

 

public class a13 {

 

        public static void main(String[] args) {

 

               Vector<String> a1 = new Vector<String>(5,5);

               // 초기값이 5이며 증가값이 5 벡터 생성

 

               a1.addElement("1");

               // 1번이라는 String 객체값은 벡터의 첫번째 요소에 저장

               a1.addElement("2");

               a1.addElement("3");

               a1.addElement("4");

               a1.addElement("5");

               System.out.println(a1.capacity());

               //벡터의 크기 확인

               a1.addElement("6");

               System.out.println(a1.capacity());

               //늘어난 벡터의 크기 확인

              

               System.out.println("--------------");

               System.out.println(a1.elementAt(0));

               System.out.println(a1.elementAt(1));

               System.out.println(a1.elementAt(2));

               System.out.println(a1.elementAt(3));

               System.out.println(a1.elementAt(4));

               System.out.println("--------------");

               System.out.println(a1.elementAt(5));

 

        }

 

}


<결과물>

자료가 마음에 드셨다면 자주 찾아주세요^^ 글 올리는데 힘이됩니다.

반응형
반응형

이번 시간에는 StringTokenizer() 클래스에 대해서 알아보도록 하겠습니다.


StringTokenizer()


StringTokenizer() 는 String의 문자열을 원하는 문자열을 기준으로 나눌 수 있는 클래스입니다.

예를들어 String="123,456,789"; 가 존재한다면 ","(쉼표)을 기준으로 String을 123/456/789 으로 3등분할 수 있습니다.


아래는 StringTokenizer()의 생성자 입니다.


아래는 StringTokenizer()의 특징입니다.


1. StringTokenizer()는 객체를 생성해서 사용해야합니다.

2. StringTokenizer()는 객체를 생성 후 import 해야합니다.

3. 위의 StringTokenizer() 중 string str은 문자열을 나눌 대상입니다.

4. string delim은 str 문자를 나눌때 기준이 되는 문자열입니다.

5. boolean은 나누는 기준이되는 문자열의 출력 여부를 묻습니다.

6. 여러개의 구획 문자가 적용가능하다. (아래 예제 참고)


아래는 StringTokenizer() 클래스와 함께 사용되는 메소드입니다.

(나누는 문자의 각 대상들을 token이라고 합니다.)


countTokens(); 

토큰의 개수 확인
hasMoreTokens(); 토큰이 더 남아있는지 확인
nextToken(); 다음 토큰을 불러옴


아래의 예제를 통하여 더 StringTokenizer()에 대해서 살펴보도록 하겠습니다.

 package 기본01;

 

import java.util.StringTokenizer;

 

public class a01 {

 

        public static void main(String[] args) {

 

               String a = "123,456,789";

               StringTokenizer a1 = new StringTokenizer(a, ",");

               // 객체 생성 import

 

               String b = "1,2,3,4,5,6,7,8,9";

               StringTokenizer b1 = new StringTokenizer(b, ",");

               // 객체 생성 import

 

               System.out.println(a1.countTokens());

               System.out.println(b1.countTokens());

 

        }

 

}


<결과물>


 package 기본01;

 

import java.util.StringTokenizer;

 

public class a02 {

 

        public static void main(String[] args) {

 

               String a = "123,456,789";

               StringTokenizer a1 = new StringTokenizer(a, ",");

               // 객체 생성 import

 

               String b = "1,2,3,4,5,6,7,8,9";

               StringTokenizer b1 = new StringTokenizer(b, ",");

               // 객체 생성 import

 

               while (a1.hasMoreTokens()) {

                       // hasMoreTokens while문을 사용합니다.

                       System.out.println(a1.nextToken());

                       System.out.println("hasMoreTokens 토큰개수 만큼 진행됩니다."+a1.countTokens()+"처음 3토큰이 -1 감소하네요");

                      

 

               }

               while (b1.hasMoreTokens()) {

                       System.out.println(b1.nextToken());

 

               }

        }

}


<결과물>


<tokenizer생성자 boolean true 적용 예제>

 package 기본01;

 

import java.util.StringTokenizer;

 

public class a02 {

 

        public static void main(String[] args) {

 

               String a = "123,456,789";

               StringTokenizer a1 = new StringTokenizer(a, ",", true);

               // 객체 생성 import

 

              // true , 분리하는 쉼표도 같이 출력됩니다

 

               while (a1.hasMoreTokens()) {

                       // hasMoreTokens while문을 사용합니다.

                       System.out.println(a1.nextToken());

                       System.out.println("hasMoreTokens 토큰개수 만큼 진행됩니다." + a1.countTokens() + "처음 토큰이 -1 감소하네요");

 

               }

        }

}

<결과물>


*중요 <tokenizer생성자 여러개의 delim>

이 기능을 사용하여 간단한 계산기 구현 가능합니다.

 package 기본01;

 

import java.util.StringTokenizer;

 

public class a02 {

 

        public static void main(String[] args) {

 

               String a = "1-2+-*/3+4+-*/56";

               StringTokenizer a1 = new StringTokenizer(a, "+-*/");

               // 객체 생성 import

 

               // true , 분리하는 쉼표도 같이 출력됩니다.

 

               while (a1.hasMoreTokens()) {

                       // hasMoreTokens while문을 사용합니다.

                       System.out.println(a1.nextToken());

               }

        }

}


<결과물>



자료가 마음에 드셨다면 자주 찾아주세요^^ 글 올리는데 힘이됩니다.

반응형