반응형

개발/Java 48

[JAVA] 자바 indexOf 사용법

특정 문자열을 받아서, 해당 문자열 내에 원하는 문자(문자열)이 있는지 확인해야 하는 경우가 많이 있다. 컨트롤러 역할을 하는 클래스에서 많이 사용될 것이다. 해당 조건으로 if else 구문을 걸고, 분기를 태워서 다른 쪽으로 이동을 시키거나, 특정 메소드를 실행 시킬 수 있다. indexOf("찾는문자") 사용법은 매우 간단하다. 찾는 문자를 (" ") 안에 추가하면 된다. 예를 들어, String teststr = "Hello"; 라는 문자를 받았다면, if(teststr.indexOf("e") > 0) { // 별도 로직 수행... } 이런 식으로 사용해주면 된다. 'e' 가 들어있는 갯수만 큼 숫자를 반환한다. 데이터가 없으면 -1 을 반환한다. indexOf("찾는문자", 숫자) 찾는 위치를 ..

개발/Java 2021.04.12

[java] equalsIgnoreCase 메소드

자바에서 문자열 비교하기 위해 자주 사용하는 메소드가 equals 입니다. equals 메소드와 비슷한게 하나 더 있는데, equalsIgnoreCase 입니다. equals, equalsIgnoreCase 차이점 차이점은 간단합니다. equals : 대소문자 비교를 함. equalsIgnoreCase : 대소문자 비교 없이 문자열만 비교함. 아래는 간단한 테스트 코드입니다. public class Test0408 { public static void main(String[] args) { // TODO Auto-generated method stub String str1 = "TREX"; if("trex".equals(str1)) { System.out.println("It's ok."); } else..

개발/Java 2021.04.08

제네릭 타입. 꺾쇠 괄호 < > 왜 사용하는가?

JAVA에서는 꺾쇠 괄호 를 사용하는 문법을 자주 볼 수 있는데요. 이게 뭘까요? 왜 사용하는 걸까요? 이것을 자바에서는 제네릭 타입이라고 부른다고 하네요. ㅁ 왜 사용하는가? '이것이 자바다' 책을 기본서적으로 보고 있습니다. 설명에 따르면, 메소드에 사용될 반환타입을 명시적으로 정해서, 오류를 사전에 차단하고, 성능을 높이고자 함이라고 합니다. 이게 무슨 말인지 좀 더 풀어서 설명하면, 꺾쇠 괄호 안에 데이터 타입을 정의 하면 두가지 면에서 좋습니다. 1) 실행단계에서 오류가 나기 전, 컴파일 단계에서 미리 체크가 가능하다. Box 으로 정해 놓으면, String 만 들어 올 수 있는 것이죠. Object로 설정하면 Integer도 들어올 수 있는데, 이런 경우 (String) str.get(); 해..

개발/Java 2021.04.03

자바 컬렉션에 대한 설명

자바 컬렉션에 대한 설명입니다. 데이터를 배열 등의 형태에 담고, 꺼내서 쓰는 방식에 대한 얘기입니다. 뉴렉처님의 영상을 보고 복습한 내용입니다. ㅁ ArrayList 가변적인 배열처럼 데이터를 받기 위한 컬렉션입니다. List list = new ArrayList(); list.add(3); list.add(5); list.add(7); System.out.println(list.get(2)); 이런 식의 문법으로 사용합니다. 순번이 0, 1, 2, 3 이런식으로 순서대로 정해집니다. 결과로 7이 나오게 됩니다. ㅁ HashSet 값 자체가 키가 된다고 합니다. 중복해서 넣는건 안되구요. Set set = new HashSet(); set.add(3); set.add(4); set.add(7); set..

개발/Java 2021.04.03

request.getServletPath() 사용 방법

getServletPath()의 의미를 찾다가, 이것이 HttpServletRequest 함수를 사용하여 취득하는 여러 메소드 중 하나라는 것을 알게 되었다. 아래는 참조한 블로그의 내용을 재구성한 예시이다. ㅁ url 정보 https://sajagogumi.com:8080/context/servlet/index.jsp?seq=1&type=noti ㅁ method : getRequestURL() https://sajagogumi.com:8080/context/servlet/index.jsp ㅁ method : getRequestURI() /context/servlet/index.jsp ㅁ method : getContextPath() /context ㅁ method : getServletPath() /s..

개발/Java 2021.03.29

jsoup jar파일을 java project 에 추가하는 방법

웹 크롤링을 java로 하기 위해서 검색해보니, jsoup이 많이 검색되었다. jsoup 홈페이지에 들어가서 다운로드 하는 방법을 보니, 직접 다운로드에 대한 설명은 없고, gradle이나 maven을 통해서 추가하는 방법만 나와 있었다. 나의 경우, 간단히 java project를 만들고 코드를 테스트 해볼 생각이였기 때문에, 그렇게까지는 필요 없었다. 해당 jar를 다운로드 받아서 적당한 로컬폴더 위치에 놓고, 그 파일을 add external jar 형태로 가지고 오면 된다. Package Explorer > 해당 프로젝트 선택(마우스 오른쪽 클릭) > Properties > Java Build Path > Libraries > Add External JARs... 로컬에 다운로드 받은 jsoup-..

개발/Java 2021.03.12

eclipse java build path 새로고침

새로운 팀에 배정 받고, 해당 팀의 프로젝트 파일을 다운로드 받는 경우가 종종 있을 것이다. eclipse에서 svn을 통해 새로운 프로젝트를 다운로드 받으면, 하단의 Problems 항목에 Errors가 가득 뜨는 것들을 접할 수 있다. 당황하지 말고 잘 읽어보면, 대부분 '... is missing required library' 같은게 많을 것이라고 본다. 이건 해당 라이브러리 위치를 찾지 못한 것이다. svn에 업로드 될 때의 의존성 주소가 그대로 올라간건데, 해당경로의 위치에 동일한 파일을 넣어주던가, 다른 곳에 놓고 링크 주소를 변경해주던가 하면 된다. 다른 로컬 디렉토리의 위치에 놓고 링크주소를 변경하는 경우에는 변경 이후 apply 눌러주면 자동으로 새로운 링크주소가 반영된다. 하지만, 기..

개발/Java 2021.03.11

[JAVA] class명과 동일한 method명

간혹 코드를 보다 보면 반환형이 없는 메소드를 만나게 된다. 이런 형태의 메소드(method)를 생성자(constructor)라고 한다. 리턴 타입이 없는 생성자 메소드의 경우 아래처럼 두가지 특징을 가지고 있다. 클래스(Class) 이름과 메소드(Method) 이름이 똑같다. 반환되는 리턴 타입이 없다. 오랜만에 자바 코드를 접하다 보니 이런걸 배웠었다는 사실조차 잊어버렸다. 반환형이 없는 메소드를 만나도 당황하지 말도록 하자. 클래스의 이름과 동일한지 확인해 보자. public Member(String name, int age) { this.name = name; this.age = age; }

개발/Java 2020.11.08

마크다운(markdown)이 무엇인가요?

마크다운 뜻 저도 궁금해서 찾아 봤습니다. 마크다운은 마크업 언어의 한 종류입니다. 읽고 쓰기 쉬운 문서 양식을 지향 한다고 하는군요. 존 그루버, 아론 스워츠가 만들었다고 합니다. 특수문자 별 표시를 넣어서 쓰면, 이렇게 목록이 만들어 집니다. 시험삼아서 써보는 중입니다.* ** 익숙해지면 편할 것 같기도 합니다. ** 마크다운 에디터에서 위와 같이 쓰면, 화면의 글처럼 보여지는군요. 존 그루버는 펄 프로그램을 이용해 마크다운을 HTML로 변환해주는 프로그램을 만들었다고 합니다. 1 인용구는 멋지게 나오는군요. 하지만, 티스토리의 마크다운 에디터가 쓰기에 불편합니다. 2 아무것도 없어요. 원래 그런 걸까요? '별을 연달아 3개 표시하니 위 같은 줄이 그어졌습니다.' 마크다운은 종류가 여러가지 있다고 하..

개발/Java 2020.10.27

[java] continue 문 이용해서 영어문장 외우기 게임 만들기

continue 문을 응용해서 무엇을 해볼까 생각하다가 간단한 퀴즈 프로그램을 만들어 봤습니다. 전부터 만들어보고 싶었던 건데, 좋은 기회인 것 같습니다. 필요한 준비물은 - String 배열 - 랜덤함수(Random) - continue 정도가 될 듯 합니다. 이번 퀴즈 프로그램은 영어문장의 일부를 지우고 맞추는 게임입니다. 하나의 문장을 출력하되, 문장 중 일부를 공란으로 만들려고 합니다. 이왕이면 문제가 출제될 때마다 랜덤하게 공란이 변하는게 좋을거 같습니다. 아이디어는 아래와 같습니다. 1) 문장을 단어별로 쪼개서 배열에 담아둡니다. 2) 문장 중 가려질 단어의 순서를 정합니다. 랜덤하게 3) 배열에 담긴 단어를 순서대로 출력하다가 4) 가려질 순서를 만나면 continue를 사용하여 반복부의 끝..

개발/Java 2020.10.24
반응형