package ch10;

import java.util.*;

public class Ch1003
{
 public static void main(String[] args)
 {
  //확장 for.. (c의 forearch문 도입)
  String food[] = new String[] {"사과","바나나","딸기"};
  for(int i=0;i<food.length;i++)
  {
  //갯수를 알아야 사용.
   String value=food[i];
   System.out.println("1방식 value : "+food[i]);  
  }
 
  //단 전제조건.. JDK 5.0 이상.
  //for(배열/컬렉션 자료형 :배열 변수명 or 컬렉션)
  for(String s:food)
  {
   System.out.println("2방식 value : "+s);
  }
 
  ArrayList list = new ArrayList();
  list.add("Java");
  list.add("JSP");
  list.add("EJB");
 
  for(int i=0;i<list.size();i++)
  {
   String value=(String)list.get(i);
   System.out.println("기존 프로그래밍 : "+value);
  }
 
  for(Object alist:list)
  {
   String value=(String)alist;
   //console에서는 Object를 자동으로 String변환되나, other에선 직접변경해줘야해서.
   System.out.println("확장 프로그래밍 : "+alist);
  }

  //제네릭 적용화면...
  ArrayList<String> jlist = new ArrayList();
  jlist.add("Java");
  jlist.add("JSP");
  jlist.add("EJB");
 
  for(String alist:jlist)
  {
   System.out.println("제네릭+확장 : "+alist);
  }
 }
}

Posted by 말없제이
,

package ch10;

import java.util.*;

public class Ch1001
{
 public static void main(String[] args)
 {
  /* 제네릭: JSP사용시 필수사항은 아닙니다!!!
   * 어질어질하신분 형변환이 아직 미숙하신분은
   * 이 부분을 덮고 진행하시는 것이 좋습니다!!!
   * 컬렉션에 저장될 클래스자료형을 미리 지정하여
   * 자료를 저장하는 형태를 제네릭이라 부른다
   * 제네릭을 적용하게 되면 컬렉션의 자료를 추출할떄의
   * 형변환의 번거로움을 줄일 수 있으며 컬렉션에
   * 일관된 데이터를 입력하도록 강제하는 효과를 줄 수 있다.
   *
   */
  //제네릭 : JSP사용자 필수사항은 아님. 미리 들어갈 형식 예약.
  //들어가는 자료형으로 일원화가능성.. auto-Boxing되므로..
  Vector<String> v=new Vector<String>();
  //v.add(new Integer(1));-->X
  v.add("C#");
  v.add("EJB");
  for (int i=0; i<v.size(); i++)
  {
   String value=v.get(i);
   System.out.println(value);
  }
 
 
 
 }
}

****** Ch1002.java *******
package ch10;

import java.util.*;

public class Ch1002
{
 public static void main(String[] args)
 {
  Hashtable<String, String> ht = new Hashtable<String, String>();
  ht.put("영화", "바람과 함께 사라지나?");
  ht.put("소설", "영원한 젯국");
  ht.put("음료", "코카콜러");
 
  //String value = ht.get("영화");
  Iterator<String> iter = ht.keySet().iterator();
 
  //잘하는 사람이 알바리스트 사용하기 쉽다..
  while (iter.hasNext())
  {
   String key=iter.next();
   String value = ht.get(key);
   System.out.println(key+":"+value);
   
  }
 }
}

Posted by 말없제이
,

HashMap

DevTool/Java 2009. 6. 10. 18:54

package ch09;

import java.util.*;

public class Ch0908
{
 public static void main(String[] args)
 {
  //HashMap은 HashTable과 사용메서드 및 개념이 유사하지만,
  //보통 다중사용자환경을 고려하는 JSP환경에서 안정적.
  //데스크톱 어플리케이션 개발에서는 HashTable이 많이 사용된다.
   
  HashMap ht = new HashMap();
  ht.put("영화","화산고"); //-> ht.get("영화");
  ht.put("게임","부르드워");
  ht.put("소설","이순신");
 
  Iterator iter = ht.keySet().iterator();
  while(iter.hasNext())
  {
   String key = (String)iter.next();
   String value = (String)ht.get(key);
   System.out.println("Key : "+key);
   System.out.println("Value : "+value);
  }

 }

}

****** Ch0909.java ******
package ch09;

import java.util.*;

public class Ch0909
{
 public static void main(String[] args)
 {
  /* Map은 인터페이스이지 클래스가 아니다...
   * 따라서 직접개체생성은 할 수 없으며
   * Map인터페이스를 상속받은 하위클래스인
   * Hashtable,HashMap클래스의 개체를
   * 대입하여 초기화할 수 있다...
   */
  Hashtable ht=new Hashtable();
  Map map=ht;
/*  
  HashMap hmap=new HashMap();
  map=hmap;
*/
  //고로 put메서드는 Map인터페이스의 추상메서드이며
  //Hashtable,HashMap에서 클래스에 맞게 구현된
  //추상메서드의 구현임을 알 수 있다...
  //map.put(arg0, arg1)

 }
}

Posted by 말없제이
,

Porperty.

DevTool/Java 2009. 6. 10. 18:53

package ch09;

import java.util.*;
public class Ch0906
{
 public static void main(String[] args)
 {
  //Property
  Properties pr = new Properties();
  pr.put("게임","스타크래프트2");
  pr.put("가수","조용필");
  pr.put("영화","여고괴담5");
 
  Iterator iter = pr.keySet().iterator();
  //Enumeration enumer = pr.keys();
 
  while(iter.hasNext())
  {
   String key = (String)iter.next();
   //String value = (String)pr.get(key);
   //.getPropety 자체적으로 String 반환.
   String value = pr.getProperty(key);
   System.out.println(key+" : "+value);
  }
 
 }
}



******* Ch0906.java *******
package ch09;

import java.util.*;
import java.io.*;

public class Ch0907
{
 //선행조건 입력테이블.. 아직 안배웠으니, 있다는 정도만 알아두고..
 //파일 생성.. 한글 설정해줘야되니. 일단 영어로..
 public static void main(String[] args)
 {
  //Properties컬렉션은 properties화일을 읽어들여
  //properties 컬렉션안에 요소를 저장하는 기능이 지원.
  try
  {
   FileInputStream in = new FileInputStream("D:\\study\\java\\Project\\sample\\src\\ch09\\Ch0907.properties");
   Properties pr = new  Properties();
   
   pr.load(in);
   Iterator iter = pr.keySet().iterator();
   while (iter.hasNext())
   {
    String key = (String)iter.next();
    String value = (String)pr.getProperty(key);
    System.out.println(key+" : "+value);
   }
   
   in.close();
  }
  catch (FileNotFoundException e)
  {
   //FileInputStream 파일이 없을시..
   // TODO 자동 생성된 catch 블록
   e.printStackTrace();
  }
  catch (IOException e)
  {
   //load 로드시..
   // TODO 자동 생성된 catch 블록
   e.printStackTrace();
  }
 
 }

}

***** Ch0907.properties  ******
 #Ch0907.properties
#ini File Setting.
movie=Wind Blows
book=Rain
sport=baseball

Posted by 말없제이
,
그냥 한번보면..
아 그렇구나 할것들.
그러나 모를땐..
머가 먼지..

VE모드에선(미리보기 - - 비슷)
Copy/Paste.. 시.. 복사가 되는데..
Type만 복사됨 - -. 속성은 다 넣어야할듯.
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
Posted by 말없제이
,

새로작성/ 기타로 들어간뒤..
사용자 삽입 이미지
Java > AWT > Frame Visual Class 선택.
사용자 삽입 이미지

Class이름 넣고 생성하면.
사용자 삽입 이미지
문득봐도 될거같은 그림이 ^^
Posted by 말없제이
,

다운 출처 : http://www.eclipse.org/downloads/
--------------------
AWT : Sun --> 빈약한 컴포턴트, 빈약한 GUI
Swing : IBM -->GUI 독립적,
SWT : Sun -->(아직까지 다룬책 없음) Rich Client Applocation, 우리나라사용많음.
---------------------

1.emf-sdo-xsd-SDK-2.2.1.zip
eclipse 설치폴더... 상위에 그냥 덮어쓰기..
ex)C:\Program Files\eclipse 일경우, C:\Program Files

2.GEF-SDK-3.2.1.zip

3.JEM-SDK-1.2.1.zip

4.VE-SDK-1.2.3_jem.zip

=======
4개설치후 확인해서 Visual Editor가보이면 완료..

사용자 삽입 이미지

Posted by 말없제이
,
AutoBoxing은 5.0부터 가능함..
되는것.. 확장for(C와 forearch 유사..)
사용자 삽입 이미지
Posted by 말없제이
,

<html>
<head>

</head>
<body>
<h2>실습-1</h2>
1.배열에 파일이름을 5개(Dump) 기억시키고<br>
파일이름 a1,a2... 형식으로 바꿔라.<br>
<script type="text/jscript">
var fileslist = new Array("060501.htm","060502.htm","060503.htm","060504.htm","060505.htm");
var renamelist = new Array(fileslist.length);
for(var i=0;i<fileslist.length;i++)
{
 renamelist[i]="a"+i+fileslist[i].substring(fileslist[i].lastIndexOf("."),fileslist[i].length);
 document.write(fileslist[i]+" --> "+renamelist[i]+"<br>");
}
</script>

<h2>실습-2</h2>
2.1에서 4까지 정수 난수를 100번 발생시켜 각 난수의 발생횟수를 출력.<br>
1이 발생한 횟수 : xx <br>
2가 발생한 횟수 : xx ....<br>
<script type="text/jscript">
var numCount = new Array(5);
for(i=0;i<numCount.length;i++)
{
 numCount[i] = 0;
}
var is1=0, is2=0, is3=0, is4=0, ise=0;
for(i=0;i<100;i++)
{
 switch(Math.floor(Math.random()*4+1))
 {
 case 1:
  is1 +=1;
  numCount[0] +=1;
  break;
 case 2:
  is2 +=1;
  numCount[1] +=1;
  break;
 case 3:
  is3 +=1;
  numCount[2] +=1;
  break;
 case 4:
  is4 +=1;
  numCount[3] +=1;
  break;
 default:
  ise +=1;
  numCount[4] +=1;
  break;
 }
}

document.write("<br>1이 발생한 횟수 : "+is1);
document.write("<br>2가 발생한 횟수 : "+is2);
document.write("<br>3이 발생한 횟수 : "+is3);
document.write("<br>4가 발생한 횟수 : "+is4);
document.write("<br>그 외 : "+ise+", 합계 : "+eval(is1+is2+is3+is4));

for(i=0;i<numCount.length-1;i++)
{
 document.write("<br>"+(i+1)+"이(가) 발생한 횟수 : "+numCount[i]);
}

</script>
</body>
</html>

Posted by 말없제이
,
<html>
<head>
<script type="text/jscript">
function checkIn()
{
alert("방문환영");
}
function checkOut()
{
alert("퇴거환영");
}
</script>
</head>
<body onLoad="checkIn()" onUnload="checkOut()" onResize="document.bgColor='gray';">
<ul><h2>이벤트</h2>
사용자가 키보드를 누르거나, 마우스를 누르거나, 문서를 읽어왔을때 마다 일어나는 동작<br>
이벤트 핸들러 :이벤트가 발생했을때 처리하도록 지원해 두는것.<br>
on이벤트이름 = "이벤트 처리함수나 메소드"<br>
ex)<body onLoad="start()"><br>
<ul>이벤트 종류
<li>click : 마우스 클릭
<li>dblclick : 마우스 더블 클릭
<li>mousedown : 마우스 버튼 눌렀을때
<li>mouseup : 마우스 눌렀다가 놓았을때
<li>mouseover : 마우스 영역위에 진입할때
<li>mouseout : 마우스 영역 벗어날때
<li>mousemove : 마우스 움직일때
<li>dragdrop : 드래그 앤 드랍할때
<li>focus : 입력 포거스 생길때(글자 적을 커서 깜박일때)
<li>blur : 입력양식에서 포커스가 다른곳으로 이동할때.
<li>select : 입력양식에서 선택할때
<li>change : 입력양식에서 내용이 바뀔때
<li>submit : 입력양식을 서버로 보낼때
<li>reset : 입력양식내용을 새로적을때
<li>load : 웹브라우저 문서 읽을때
<li>unload : 웹브라우저 문서 닫을때
<li>abort : 이미지 읽기를 강제로 중단할때
<li>error :  에러가 발생할때
<li>keydown : 키보드 눌렀을때(이후 keypress이벤트 발생)
<li>keypress : 키보드 키를 눌렀을때(영문,숫자만 해당)
<li>keyup : 키보드 눌렀다 놓았을때
<li>move : 윈도우나 프레임을 움직였을때
<li>resize : 윈도우나 프레임의 크기 조정했을때.
</ul>
<ul>
<xmp>
<script type="text/jscript">
function on2()
{
 document.bgColor="blue";
}
function on3()
{
 document.bgColor="beige";
}
</script>
<input type="button" value="누르면 바탕색 파랑으로 바꿈" onMouseDown="on2()" onMouseUp="on3()">
</xmp>
<li>click : 입력양식 클릭시 발생<br>
<script type="text/jscript">
function on2()
{
 document.bgColor="blue";
}
function on3()
{
 document.bgColor="beige";
}
</script>
<input type="button" value="누르면 바탕색 파랑으로 바꿈" onMouseDown="on2()" onMouseUp="on3()">
<br>
<li>load,unload : 이미 넣어놨으니. 문서열때 봤을테고, 닫음 볼수 있을것.<br>
<xmp>
<head>
<script type="text/jscript">
function checkIn()
{
alert("방문환영");
}
function checkOut()
{
alert("퇴거환영");
}
</script>
</head>
<body onLoad="checkIn()" onUnload="checkOut()">
</xmp>
<br>
<li>abort : 이미지 읽는 동안 중지할때<br>
<xmp>
<img src="http://wstatic.naver.com/w9/lg_naver_v3.gif" onAbort="alert('이미지 로딩이 중지');">
</xmp>
<img src="http://wstatic.naver.com/w9/lg_naver_v3.gif" onAbort="alert('이미지 로딩이 중지');">
<br>
<li>blur/focus
<xmp>
<input type="text" size="100" onBlur="document.bgColor='yellow'" onFocus="document.bgColor='green'">
</xmp>
<input type="text" size="100" onBlur="document.bgColor='yellow'" onFocus="document.bgColor='green'">
<li>dblclick<br>
<xmp>
<input type="text" onDblClick="alert('더블클릭');">
</xmp>
<input type="text" onDblClick="alert('더블클릭');">
<br>
<li>change
<xmp>
<input type="text" onChange="alert('내용이 변경');">
아래 입력박스에 글자적고 나오면.. 이벤트 발생...
</xmp>
<input type="text" onChange="alert('내용이 변경');">
<br>
<li>moseover,mouseout<br>
<xmp>
<input type="text" onMouseover="alert('입력위');" onMouseout="alert('입력벗어남');">
</xmp>
<input type="text" onMouseover="alert('입력위');" onMouseout="alert('입력벗어남');">
<li>keypress,keydown,keyup
<xmp>
<input type="text" onKeypress="alert('누름 띄지마~~');" onKeydown="alert('결국 눌렀군');" onKeyup="alert('결국 떼었군');">
</xmp>
<input type="text" onKeypress="alert('누름 띄지마~~');" onKeydown="alert('결국 눌렀군');" onKeyup="alert('결국 떼었군');">
<li>select<br>
<xmp>
글자입력후 드래그해서 선택하는 순간..<br>
<input type="text" onSelect="alert('선택');">
</xmp>
글자입력후 드래그해서 선택하는 순간..<br>
<input type="text" onSelect="alert('선택');">
<li>mousedown/mouseup<br>
<xmp>
<p>글자내 <a onMousedown="document.bgColor='red';" onMouseup="document.bgColor='beige';">색상을 마우스 눌렀을때와 놓았을때 차이점</a></p>
</xmp>
<p>글자내 <a onMousedown="document.bgColor='red';" onMouseup="document.bgColor='beige';">색상을 마우스 눌렀을때와 놓았을때 차이점</a></p>
<br>
<li>resize<br>
<xmp>
<body onResize="document.bgColor='gray';">
</xmp>
<li>submit/reset<br>
<form name="test1" onSubmit="alert('숩밑');" onReset="alert('레셑');">
 <input tyep="text" value="12">
 <input type="submit">
 <input type="reset">
</form>
</ul>
</ul>
</body>
</html>
Posted by 말없제이
,