2011年6月17日 星期五

Spinnertest網路範例

這個範例是下拉式選單,
當你在網路填寫問卷或者生日時,
通常都會有這類的下拉式選單,
只要把字面上改一下就能夠有不同的功用唷

範例 Spinnertest


程式碼部分
main

<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout
android:id="@+id/widget29"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<Spinner
android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="120px"
android:layout_y="112px"
>
</Spinner>
</AbsoluteLayout>

--------------------------------------------------------------------------------------

主程式部分

package com.demo.android.spinnertest;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.Toast;

public class Spinnertest extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findview();
//建立一個ArrayAdapter物件,並且存放下拉式選單的內容
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,new String[]{"Screen","Keyboard","Mouse"});
//設定Spinner的樣式
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//設定adapter 將剛剛的下拉式選單內容 給這個widget
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(spinnerListener);
}
private void findview() {
spinner = (Spinner) findViewById(R.id.spinner);
}
private Spinner spinner;
//監聽下拉式選單 是否被選擇
private Spinner.OnItemSelectedListener spinnerListener= new Spinner.OnItemSelectedListener()
{
//如果被選擇
public void onItemSelected(AdapterView<?>adapterView, View v, int position, long id)
{
//利用Toast來顯示 Toast.LENGTH_LONG則表示 顯示時間長
//Spinnertest.this 則代表指向Spinnertest這個實例 若是寫成this則是指向OnItemSelectedListener這個實例
//最後用show()將Toast 元件顯示在螢幕上
Toast.makeText(Spinnertest.this, "You select"+adapterView.getSelectedItem().toString(), Toast.LENGTH_LONG).show();
}
//若是沒有選擇任何項目
public void onNothingSelected(AdapterView<?>adapterView)
{
Toast.makeText(Spinnertest.this, "You don't select anything", Toast.LENGTH_LONG).show();
}
};

}


執行畫面截圖





這個如果在搭配上其他的物件,
例如說時間或者是其他按鈕時,
就會有不一樣的程式嚕。

ProgressBar網路範例

這次找的範例是ProgressBar
這是我們玩遊戲或者跑程式常看到的讀取條

連結  ProgressBar

程式碼如下

main部分

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 
<TextView   
    android:layout_width="fill_parent"  
    android:layout_height="wrap_content"  
    android:text="@string/hello" 
    /> 
<ProgressBar 
    android:id="@+id/progressbar"  
    android:layout_width="fill_parent"  
    android:layout_height="wrap_content" 
    style="?android:attr/progressBarStyleHorizontal" 
    android:max="100" 
    /> 
</LinearLayout> 


------------------------------------------------------------------------------------

主程式部分

package com.AndroidProgressBar;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.ProgressBar;
public class AndroidProgressBar extends Activity {

 ProgressBar myProgressBar;
 int myProgress = 0;


    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);      
      
        myProgressBar = (ProgressBar)findViewById(R.id.progressbar);
        myProgressBar.setProgress(myProgress);
       
        new Thread(new Runnable(){
   public void run() {
    // TODO Auto-generated method stub
    while(myProgress<100){
     try{
      myHandle.sendMessage(myHandle.obtainMessage());
      Thread.sleep(1000);
     }catch(Throwable t){
     }
    }
   }
        }).start();
       
    }
   
    Handler myHandle = new Handler(){
  @Override
  public void handleMessage(Message msg) {
   // TODO Auto-generated method stub
   myProgress++;
   myProgressBar.setProgress(myProgress);
  }
    };
}




執行的畫面截圖如下






大家可以多多參考嚕!!

RadioButton範例

想做Android物件必須要學習很多工具
然而在學習必須要有範例
以下是在網路上的RadioButton範例
RadioButton範例


我把程式碼部分列在下方


main 的部分


<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout
android:id="@+id/widget0"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<RadioGroup
android:id="@+id/radiogroup"
android:layout_width="320px"
android:layout_height="430px"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_x="0px"
android:layout_y="2px"
>
<RadioButton
android:id="@+id/maleradio"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Man"
>
</RadioButton>
<RadioButton
android:id="@+id/femaleradio"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Woman"
>
</RadioButton>
</RadioGroup>
</AbsoluteLayout>

-------------------------------------------------------------------------

程式碼部分

package com.android.demo.radiobutton;
import android.app.Activity;
import android.os.Bundle;
import android.widget.RadioGroup;
import android.widget.Toast;
public class Radiobutton extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findview();
setlistener();
}
private RadioGroup myradiogroup;
private void findview()
{
myradiogroup=(RadioGroup)findViewById(R.id.radiogroup);
}
private void setlistener()
{
myradiogroup.setOnCheckedChangeListener(changeradio);
}
//監聽radiogroup裡面的radiobutton是否有被使用者圈選
private RadioGroup.OnCheckedChangeListener changeradio=new RadioGroup.OnCheckedChangeListener()
{
public void onCheckedChanged(RadioGroup group, int checkedId)
{
//透過id來辨認不同的radiobutton
switch(checkedId)
{
case R.id.maleradio:
Toast.makeText(Radiobutton.this,"You are a Man",Toast.LENGTH_LONG).show();
break;
case R.id.femaleradio:
Toast.makeText(Radiobutton.this,"You are a Woman",Toast.LENGTH_LONG).show();
break;
default:
Toast.makeText(Radiobutton.this,"Someting error",Toast.LENGTH_LONG).show();
}
}
};
}




執行出來畫面截圖



這就是執行出來的結果,
然而這在很多東都用的到,
例如製作填寫網路問卷時,
這些簡單的東西累積起來也是很有用的東西唷。




2011年6月16日 星期四

分享自己的小作品 (Android回答問題遊戲)

自己製作的回答問題遊戲

用很簡單的東西來做出一些小遊戲
或者做出一些輔助程式,也是不錯的唷

以下使用了 CheckBox、Button、TextView、RatingBar

主程式為

package edu.fcu;
import org.w3c.dom.Text;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.RatingBar;
import android.widget.TextView;
import android.widget.Toast;
import android.app.Activity;
import android.widget.Button;
import java.awt.*;
import android.widget.RatingBar;
public class A123456Activity extends Activity {
    /** Called when the activity is first created. */
 protected String a,b,c;
 protected float d=0;
 protected TextView text1,text2;
 protected CheckBox box1,box2,box3,box4;
 protected Button but1;
 protected RatingBar rat1;
 protected int i=0;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        text1 = (TextView)A123456Activity.this.findViewById(R.id.textView1);
        text2 = (TextView)A123456Activity.this.findViewById(R.id.textView2);
        box1=(CheckBox)A123456Activity.this.findViewById(R.id.checkBox1);
        box2=(CheckBox)A123456Activity.this.findViewById(R.id.checkBox2);
        box3=(CheckBox)A123456Activity.this.findViewById(R.id.checkBox3);
        box4=(CheckBox)A123456Activity.this.findViewById(R.id.checkBox4);
        but1=(Button)A123456Activity.this.findViewById(R.id.button1);
        rat1=(RatingBar)A123456Activity.this.findViewById(R.id.ratingBar1);
       
        but1.setOnClickListener(new Button.OnClickListener(){
   @Override
   public void onClick(View v) {
    // TODO Auto-generated method stub
          d=0;
          a="好厲害!!你全對了~~按下確認答案進行下一題";
          b="你確定?? 好像有問題喔";
   if(i==0){
    text1.setText("1+1=?");
    box1.setText("2");
    box2.setText("Two");
    box3.setText("二");
    box4.setText("11");
          if (box1.isChecked()==true){
           d=d+1;
          }
   
          if (box2.isChecked()==true){
           d=d+1;
          }
         
          if (box3.isChecked()==true){
           d=d+1;
          }
          if (box4.isChecked()==false){
           d=d+2;
          }
          }
  
   if (i==1){
    text1.setText("這是不是一款問答遊戲?");
    box1.setText("不是");
    box2.setText("是");
    box3.setText("一定是");
    box4.setText("根本就是");
          if (box1.isChecked()==false){
           d=d+2;
          }
   
          if (box2.isChecked()==true){
           d=d+1;
          }
         
          if (box3.isChecked()==true){
           d=d+1;
          }
          if (box4.isChecked()==true){
           d=d+1;
          }
   }
   if(i==2){
    text1.setText("這款0元大富翁好玩嗎?");
    box1.setText("好玩");
    box2.setText("難玩");
    box3.setText("超好玩");
    box4.setText("不錯玩");
          if (box1.isChecked()==true){
           d=d+1;
          }
   
          if (box2.isChecked()==false){
           d=d+1;
          }
         
          if (box3.isChecked()==true){
           d=d+2;
          }
          if (box4.isChecked()==true){
           d=d+1;
          }
      }
  
   if(i==3){
    text1.setText("成績會有幾分");
    box1.setText("100分");
    box2.setText("滿分");
    box3.setText("最高分");
    box4.setText("夢醒時分?!");
          if (box1.isChecked()==true){
           d=d+1;
          }
   
          if (box2.isChecked()==true){
           d=d+1;
          }
         
          if (box3.isChecked()==true){
           d=d+1;
          }
          if (box4.isChecked()==false){
           d=d+2;
          }
      }
 
  
  
         if (d<5) {
          text2.setText(b);
         }
         if (d>=5){
          text2.setText(a);
          i=i+1;
          box1.setChecked(false);
          box2.setChecked(false);
          box3.setChecked(false);
          box4.setChecked(false);
            if (i>3)
             i=0;
         }
         rat1.setRating(d); 
   }
        });
       
       
    }
}

--------------------------------------------------------------------------------------------

接下來是main的程式碼
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <TextView
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:text="1+1=?"
    android:id="@+id/textView1">
    </TextView>
   
<CheckBox
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/checkBox1"
android:text="2" >
</CheckBox>
<CheckBox android:text="二"
android:id="@+id/checkBox2"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content">
 </CheckBox>

<CheckBox android:text="Two"
android:id="@+id/checkBox3"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</CheckBox>
<CheckBox android:text="じゅういち"
android:id="@+id/checkBox4"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</CheckBox>
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button1"
android:text="確認答案">
</Button>
<TextView android:text="評語"
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</TextView>
<RatingBar android:id="@+id/ratingBar1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</RatingBar>
</LinearLayout>


遊戲截圖

新一代手機軟體-eclipse

相信對於手機有留意的朋友們
對Android手機印象深刻吧!!

沒錯,接下來就是要分享
用eclipse來製作Android手機軟體
以及利用SDK Manager來模擬Android手機

首先,介紹一個不錯的JAVA部落格
http://tccnchsu.blogspot.com/
程式設計工藝大師
裡面有介紹著很多JAVA的知識給新鮮人
接下來要使用的軟體也必須要有JAVA的人才能用唷
如果沒有JAVA程式就參考大師的內容唄

首先 點選 eclipse 進入之後右上角會有一個 Download eclipse

點選進去 選擇Eclipse Classic 3.6.2  旁邊有分32或64位元
根據你的電腦下載(win7有些是64位元,XP一般都是32位元),然後安裝

另外要下載 SDK Manager來模擬Android手機
然而在這裡 SDK簡介與下載
就可以完成安裝以及使用SDK
SDK一開始安裝後,要下載很多套件等,
 前面打勾的部分就是等一下會安裝的東西
你可以篩選一下哪些要裝的,如果不知道就直接按
右下角吧(大部分都安裝上去,可是會比較久一點)

安裝完後測試一下 ,
首先點選 左邊Virtual devices

然後點選new後,取名字,如圖(這裡用Text1當範例)


完成後點選Create AVD
然後上一張圖的點選start...  就可以了

接下來開啟eclipse,首次使用他會問你要把以後的資料放在哪裡的workspace資料夾
(一般都是用workspace名稱的資料夾,路徑可以自己設定),完成後按下ok。

接下來的請依照SDK簡介與下載 來做第一個Android吧

2011年4月22日 星期五

JAVA 的第七堂課 (讓陣列裡面的數字可以隨機更改~BINGO用的到唷)

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class SwingTestEvent extends JFrame implements ActionListener
{
//static JFrame myfrm=new JFrame("JButton class"); // Java Class JFrame
//static AwtTestEvent myfrm=new AwtTestEvent("JFrame 1 "); // Java Class JFrame
static JTextField tbx1=new JTextField(2); // 建立1文字方塊物件
static JButton buttons[]=new JButton[25];//建立25個JButton
static JLabel  labels[]=new JLabel [10];
public static void main(String args[])
{
SwingTestEvent myfrm=new SwingTestEvent();
String numbers[]  =new String[25];
FlowLayout flow=new FlowLayout();
GridLayout grid12= new GridLayout(1,2);
GridLayout grid33= new GridLayout(5,5);
myfrm.setLayout(grid12);
myfrm.setSize(700,700);
JPanel p1 = new JPanel(grid33); //實作  panel 1
for (int i=0;i<25;i++)
{
numbers[i]=String.valueOf(i);
}
for (int i = 0; i < numbers.length; i++)
{
buttons[i] = new JButton(numbers[i]); // create buttons
p1.add(buttons[i], grid33); // 在 panel 1內加入按鈕陣列
}
myfrm.add(p1); // 在視窗myfrm 內加入 panel 1
JPanel p2 = new JPanel(flow); //實作  panel 2
JButton btn1=new JButton("JButton 1"); // 建立按鈕物件 btn1
btn1.addActionListener(myfrm);
p2.add(tbx1); // 在 panel 2內加入文字方塊
p2.add(btn1); // 在 panel 2內加入按鈕
myfrm.add(p2); // 在視窗myfrm 內加入 panel 2

myfrm.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
String stringValue;
int i,ran;
String numbers[]  = new String[25];
String j;
for (i=0;i<25;i++)
{
numbers[i]=String.valueOf(i);
}
//上面迴圈是為了在numbers[ ] 裡面放進0~24的數字
for (i=0; i<=24;i++)
{
ran=(int)(Math.random()*(25-i));   // 產生亂數
buttons[i].setLabel(numbers[ran]);  // 根據亂數,把numbers[ ] 裡面的數字 讓buttons[ ] 標題改變
//以下開始做對調
j=numbers[ran];
numbers[ran]=numbers[25-i-1];
numbers[25-i-1]=j;
}

}
}

2011年3月25日 星期五

JAVA的第六堂課 AWT Button

程式設計工藝大師http://tccnchsu.blogspot.com/

大家好,
今天又來分享心得了,
這次銜接上次第五堂課。


這是最剛開始的程式碼
以下解釋
static Frame ifrm=new Frame("Button class");

static 在某個電腦記憶體某區塊是靜止的(可以暫時不用理他,照打就對了)
Frame **** = new Frame("Button class");
是造一個Framer叫做**** 其TITLE是   Button class
其他的上個禮拜有解釋過,可以去看上禮拜的內容


BorderLayout這一行是把按鈕作排列,而排列方式是分北、南、東、西、中這五種
創造一個border具有這種按鈕功能



 這是今天的結果
// AWT, Button類別
import java.awt.*;
import java.awt.event.*;
public class AwtText extends Frame implements ActionListener
{
//static Frame ifrm=new Frame("Button class");
static Button btn1=new Button("BBBB1");  //建立按鈕物件
static TextField text1=new TextField("Text1") ;  //建立文字表單
static TextField text2=new TextField("Text2") ;
static TextField text3=new TextField("Text3") ;
static TextField text4=new TextField("Text4") ;
static TextField text5=new TextField("Text5") ;
static TextField text6=new TextField("Text6") ;
static TextField text7=new TextField("Text7") ;
public static void main(String args[])
{
AwtText ifrm=new AwtText(); //造出一個視窗
FlowLayout border =new FlowLayout();   //這是一種流水的排列方式,有別於上面的BorderLayout
ifrm.setLayout(border);
ifrm.setSize(500,150);
btn1.addActionListener(ifrm);
ifrm.add(btn1,border); // 在視窗內加入按鈕
ifrm.add(text1,border);
ifrm.add(text2,border);
ifrm.add(text3,border);
ifrm.add(text4,border);
ifrm.add(text5,border);
ifrm.add(text6,border);
ifrm.add(text7,border);
ifrm.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
int a,b,c,d,f,g,h;
a=(int) (Math.random()*49+1) ;
String aa = Integer.toString(a);   //把a整數轉成aa文字
System.out.println(a);
text1.setText(aa);                      //把aa印在text1的框框內,而這個***.setText( )的()內只能是文字
b=(int) (Math.random()*49+1) ;
String bb = Integer.toString(b);
System.out.println(b);
text2.setText(bb);
c=(int) (Math.random()*49+1) ;
String cc = Integer.toString(c);
System.out.println(c);
text3.setText(cc);
d=(int) (Math.random()*49+1) ;
String dd = Integer.toString(d);
System.out.println(d);
text4.setText(dd);
f=(int) (Math.random()*49+1) ;
String ff = Integer.toString(f);
System.out.println(f);
text5.setText(ff);
g=(int) (Math.random()*49+1) ;
String gg = Integer.toString(g);
System.out.println(g);
text6.setText(gg);
h=(int) (Math.random()*49+1) ;
String hh = Integer.toString(h);
System.out.println(h);
text7.setText(hh);
}
}

2011年3月18日 星期五

JAVA 的第五堂課

今天學的是與上次相連接的,
一樣是按鈕,
一開始我們先來看看這個程式碼:

 編譯完

接下來我們看看這個程式碼



 這是我最後寫出來的程式碼





在程式名字後面JFrame  implements ActionListener
可以有監聽功能
不過記得有了這個,程式最後面要多上
public void actionPerformed(ActionEvent e)
{

}



這是程式碼,以下紅色部分要一樣,
藍色是我自己寫的,在程式內請不要打上(或者加註解)


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;                                 套件
public class ButtonText extends JFrame  implements ActionListener  {
  public static void main(String[] args) {
       ButtonText test = new ButtonText();
}

ButtonText()
{
    JButton button1 = new JButton("Submit");   這是在import javax.swing.*套件下的東西   
JButton button2 = new JButton("Submit");
 button1.addActionListener(this);   這是讓button1對滑鼠做監聽 
button2.addActionListener(this);   這是讓button2對滑鼠做監聽
  getContentPane().add(button1);   把button1新增到一個frame 
getContentPane().add(button2);   把button2新增到一個frame
 setLayout(new FlowLayout());
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setSize(200,100);
    setVisible(true);
 //  System.out.println("wait");   ←註解掉了  可以不看
//      System.exit(0);                ←註解掉了   可以不看
}
public void actionPerformed(ActionEvent e) {
int i=0;                                                這只是題目(隨機亂數1~49)   先把i設為整數變數
i = (int)(Math.random()*49+1);       Math.rahd() 0~1之間的亂數,(int) 後面強制設為整數格式  
System.out.println(i);                            印出這個數
}
}


 這就是今天的成果
 這個可以拿來當你不知道樂透想選什麼號碼的時候
 來試試看,或許有意想不到的收穫!!
 如果有中頭獎的話,不用分我,只要留個言我就很高興了~

2011年3月11日 星期五

JAVA的第四堂課 Button

今天上課是教如何用java做出個按鈕

首先我們來看看有什麼程式也能做出按鈕


VB這個程式也有製造按鈕功能




接下來我們也開始製作屬於自己JAVA的按鈕吧!!

因為剛開始沒有概念,所以我們找一下幾個網站
從裡面程式學習
以下網站可以參考
http://www.dotblogs.com.tw/brady/archive/2008/05/30/4177.aspx

一進入畫面 拉往下面一點點
就可以發現程式
然後使用他的程式碼
先把前面列數字刪除
在自己的JAVA檔案中  並且執行看看


以下是修改後的程式



注意一下
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
是之前JAVA已經有的程式(套件)
拿來當資料來源(這裡引用)

再來介紹一下
Frame frame=new Frame("Box");  
這是新增一個視窗名字為BOX
frame.setSize(500,600);
frame.setVisible(true);
它的大小是500,600
然後現在為開啟狀態

以下這個是可以打勾勾的按鈕
JCheckBox mybutton2 = new JCheckBox("123");
新增一個JAVA的CheckBox  名字叫mybutton2 後面會顯示123
mybutton2.setSize(40,30);        這是mybutton2的大小
frame.add(mybutton2);             以及把mybutton2加入倒剛剛的frame裡面

這是一個一般按鈕
Button mybutton = new Button("Boxes"); 
新增一個按鈕名字叫做 mybutton
mybutton.setSize(100,80);
這是按鈕大小
frame.add(mybutton);
加入按鈕到frame裡面


frame.addWindowListener(new WindowAdapter(){
      public void windowClosing(WindowEvent e){
        System.exit(0);
      }
    }

這是讓他可以關閉,這樣才能關閉這個按鈕視窗
非常重要喔~  不然到時候關不掉可就好玩了!!

以上就是今天的程式內容

2011年3月4日 星期五

JAVA的第三堂課

今天上的JAVA課程中,
把第二堂課在重新學習一次如何看錯誤來改正自己的程式。
後來開始使用args[]這個東西,
測試使用System.out.println(args[0]);的用途
承接上次第二堂課System.out.println();
是藉由系統印出 ( )裡面的東西
如果要印出文字要加" "

因為args[]是一個文字陣列,
這次是用x當變數
所以在System.out.println(args[]);上面打上
x=args[0]
可是當這樣打的時候
去編譯卻不會過,
原因很簡單,就是x沒有宣告


於是我們在上面把x宣告成int (也就是整數) 
int x;

然後在編譯一次
還是會發生錯誤
原因為  x是整數 然而args[0]為文字
所以我們要把args[0]改成整數


最後的作業就是
寫一個小矩陣

2011年2月25日 星期五

JAVA的第二堂課

這次是從最簡單,從無到有,如何建構JAVA
剛開始從空白的WordPad

然後儲存成java格式後

利用命令字元做編譯
 然後接下來會出現一連串錯誤訊息
這時候找關鍵字
每碰到一個就解決一個,
執行一次後又出現問題,
根據這個步驟
例如說
少了Text名稱就在檔案中補上Text
少了class 就在Text之前加上class
以此類推
根據錯誤來學習



就可以打出一個基本架構嚕!!
架構也是最重要的
格式就如下


然後在學會如何列印出字幕
利用System.out.println("    ") ;
這個就是印出"  " 裡面的字並且跳行


今天的作業就是製作簡單的聖誕樹
這就是今天作業結果嚕!!

以下就是程式碼
我的第一次JAVA程式

第二堂課就到這嚕。

其實有學過其他的程式語言
再來修JAVA的時候感覺很簡單
只差架構還有變數宣稱。
所以說萬事都是以基礎重要,
沒了最基本的架構,寫程式根本就空談。
老師從最簡單來教導,
如何看錯誤得訊息、如何排除錯誤問題
所以今天這堂課是既簡單又重要,
以後的課程還很長,勉勵自己加油一下!!
成功的路又邁進一步。

2011年2月18日 星期五

JAVA的第一堂課 (學習心得)

今天第一次使用JAVA,問題並不大,
因為程式碼為預先打好的,
不過至於電腦去做執行時卻問題很多,
因為電腦的權限問題無法解決,
在執行時就會有很大問題(包括環境變數無法更改)

之後解決方法如下
首先把JAVA安裝好的那個資料夾路徑抓到有權限的地方
我是從
C:\Program Files\Java  的 jdk1.6.0_24  (安裝的JAVA資料夾)
移到有權限的
D:\JAVA   
如下圖

再來打開記事本輸入下列指令
/**
 * The HelloWorldApp class implements an application that
 * simply prints "Hello World!" to standard output.
 */
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!"); // Display the string.
    }
}

存檔位置為
D:\java\jdk1.6.0_24\bin
名字為
"HelloWorldApp.java"
連引號都要輸入存檔
然後開啟
命令提示字元
進入
D:\java\jdk1.6.0_24\bin
(個人的存放位置會不同,所以要依各人修改)
然後先執行一次
輸入以下
javac HelloWorldApp.java
然後再輸入
java HelloWorldApp
就可以看到成果了


這也印證了 權限不足也有夠麻煩的
(花了不少時間在權限上)

2011年2月17日 星期四

JAVA的第一堂課 (回答問題)

一、
1.為何why要選修這門課?(動機)
以前在重灌電腦後使用網路的時候經常碰到要求JAVA
,可是卻不知道JAVA是什麼。
高中上課時,我們數學老師以及電腦老師也都有提起這套軟體,
功能強大而且非常好用,對於程式設計也是一個看好的市場
拿來可以設計程式或者一些小動畫之類的,非常好玩。
在上大學學習C語言的時候更聽老師說過JAVA也不錯用,
而且找工作也比容易。
因此本來對於資訊這方面有興趣的我,就在大三選擇這門課。

2.希忘從這門課獲得那些知識?(目標)
我想在這門課學習如何使用JAVA程式,
因為有學過C語言,頗有心得也感覺好玩,
認為程式邏輯上不會相差太多,
想要藉由大一有的程式概念來延伸在這款軟體上,
而在大一不足的地方,也想補強。(指標學的不是很穩)
3.我要如何修習這一門課?(態度與方法)
在每次上課會去想想這次所學的可以應用在哪邊。
藉由上課實際操作以及老師的解說能夠對這款語言更加熟悉,
做事情都是由不會學到會,由會學到精,
相信這門學問也是如此。
學習不是只有上課就足夠的,
如果不會或者不是很清楚地也會適時地去尋找幫助,
希望能夠在這門學問中最後佔有一席之地。

二、
請問您畢業後,如果找不到工作,您會花錢去上 "Java程式設計實力精修班" 課程嗎?
為甚麼?請您說明原因,100個字以上。
 我會先去詢問其他學去過這個實力精修班的人,
看看所學習的跟我已經會的相去多少,
如果差不太多,則我會選擇自我進修而不會去參加加強班。
反之,如果我的能力落差太多,則我會選擇參加,
雖然價錢上有點高,不過相較於以後的工作機會以及待遇,
這是小錢而已,而且增加一個方面的知識可以套用以後隨之而來改變的知識。

JAVA是現在看過很普遍的一套使用軟體,
並不代表它是一款有恆不朽的軟體,
可是如果能把JAVA當作自己的底子,
或許以後更好的程式也能夠得心應手,
比其他人更領先一步。


三、