標題:
今日課程重點
[打印本頁]
作者:
ray
時間:
2012-10-10 23:51
標題:
今日課程重點
一、Eclipse的安裝與使用
1.在google上尋找eclipse download
2.進入Eclipse的官網,選擇Classic版本中符合你OS的版本下載
3.解壓縮後放在硬碟鐘即可執行(執行先要先安裝好JDK)
二、使用Scanner取代Console來取得鍵盤的輸入
請參考:
http://ray-android.blogspot.tw/2012/10/java-console.html
三、&&與&、 ||與|的不同
&與|兩邊的條件式都會執行到
&&與||前面的條件式若是已經讓條件准成立時不會再執行後面的條件式
四、String類別的介紹
各位同學可以對四的主題發表自己的心得嗎?程式有Copy回家的也歡迎貼上來,若能加入自己的注解或進階的測試程式更好哦~
作者:
ray
時間:
2012-10-11 11:18
class MyString //自行建立一個字串類別
{
private String mString; //一個字串屬性,用來儲存產生的物件中的字串內容
public void set(String ss) //設定方法,設定mString的內容
{
this.mString = ss;
}
public String get() //取用方法,讀取mString的內容
{
return this.mString;
}
}
public class MyStringTest
{
public static void main(String[] args)
{
String stringA,stringB; //建立兩個String物件:stringA,stringB
stringA = "hello"; //將stringA的內容設定為 "hello"
stringB = stringA; //令stringB等於stringA
if(stringA == stringB) //判斷stringA是否等於stringB並印出結果
System.out.println("stringA = stringB");
else
System.out.println("stringA != stringB");
stringA = "bye bye"; //將stringA的內容改為 "bye bye"
if(stringA == stringB) //判斷stringA是否等於stringB並印出結果
System.out.println("stringA = stringB");
else
System.out.println("stringA != stringB");
MyString myStringA,myStringB; //建立兩個MyString物件:myStringA,myStringB
myStringA = new MyString(); //建立myStringA的實體
myStringA.set("hello"); //將myStringA的內容設定為 "hello"
myStringB = myStringA; //令myStringB等於myStringA
if(myStringA == myStringB) //判斷myStringA是否等於myStringB並印出結果
System.out.println("myStringA = myStringB");
else
System.out.println("myStringA != myStringB");
myStringA.set("bye bye");
if(myStringA == myStringB) //判斷myStringA是否等於myStringB並印出結果
System.out.println("myStringA = myStringB");
else
System.out.println("myStringA != myStringB");
}
}
複製代碼
作者:
ray
時間:
2012-10-11 11:30
有時間做作業的同學請完成下面作業~
請大家寫一個程式:
1.使用new的方式來產生兩個字串,內容均為"Hello"
2.使用==來判斷這兩個字串是否相同並輸出結果
3.使用equals來判斷這兩個字串是否相同並輸出結果(利用Eclipse的程式提示來學習用法)
4.將結果也貼上來並說明你對結果的解釋!
作者:
晏有聰
時間:
2012-10-11 15:07
老師不好意思 , "使用equals來判斷" , 這句有點忘了怎麼做 .
作者:
吳尚哲
時間:
2012-10-11 21:41
public class MyClass_test
{
public static void main(String args[])
{
String str1 = new String("hello");
String str2 = new String("hello");
if(str1==str2)
{
System.out.println("str1==str2");
}
else
{
System.out.println("str1!=str2");
}
if(str1.equals(str2))
{
System.out.println("str1 equal str2");
}
else
{
System.out.println("str1 not equal str2");
}
System.out.println("str1 =" + str1);
System.out.println("str2 =" + str2);
}
}
複製代碼
執行結果
str1!=str2
str1 equal str2
str1 =hello
str2 =hello
複製代碼
"=="為比較是否為同一物件,若指向同一物件則傳回true
"equals"比較了2個物件的屬性(?),若相同則傳回true
那若是基本型態的比較(非物件)是否"=="和"equals"都會傳回一樣結果 是這樣嗎??
作者:
ray
時間:
2012-10-11 22:34
有聰:你的問題尚哲的程式裡有答案了,我就不多說了~
尚哲:你實在太認真了,給你一個"讚",至於你的問題:
1."equals"比較了2個物件的屬性(?) --> 比較正確的說法是比較兩個物件的"內容"~
2.基本形態沒有指標只有實體(不會講物件),所以沒有比較是否為同一物件(應該稱之為實體)的可能性(絕對不是同一個實體),因此這時的==就是在比較內容了,所以就沒有equals了哦~
作者:
許銘欽
時間:
2012-10-12 17:14
package My_20121012;
class MyStrLoris
{
String mString; //自訂值
void set (String ss) //set 放入
{
mString=ss;
}
public String get() //get 取出
{
return mString;
}
}
public class MyString2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str1 = new String("Hello");
String str2 = new String("Hello");
//str2 = str1;
if (str1==str2) //比較是否為同一實體!!
System.out.println("str1==str2");
else
System.out.println("str1!=str2");
if (str1.equals(str2)) //使用equals,比較屬性(內容)!!
System.out.println("msl1==msl2");
else
System.out.println("msl1!=msl2");
str2 = str1; //指派str2等於str1!!
if (str1==str2)
System.out.println("str1==str2");
else
System.out.println("str1!=str2");
if (str1.equals(str2)) //再使用equals,比較屬性(內容)!!
System.out.println("msl1==msl2");
else
System.out.println("msl1!=msl2");
}
}
複製代碼
作者:
晏有聰
時間:
2012-10-12 18:00
class MyString
{
private String mString;
public void set(String ss)
{
this.mString = ss;
}
public String get()
{
return this.mString;
}
}
public class Homework
{
public static void main(String[] args)
{
MyString myStringA,myStringB;
myStringA = new MyString();
myStringA.set("Hello");
myStringB = new MyString();
myStringB.set("Hello");
System.out.println("myStringA ="+myStringA);
System.out.println("myStringB ="+myStringB);
if(myStringA == myStringB)
System.out.println("myStringA = myStringB");
else
System.out.println("myStringA != myStringB");
System.out.println("----------------------------------------------------------------");
System.out.println("myStringA ="+myStringA);
System.out.println("myStringB ="+myStringB);
if(myStringA.equals(myStringB))
System.out.println("myStringA equal myStringB");
else
System.out.println("myStringA not equal myStringB");
}
}
複製代碼
結果:
myStringA =MyString@2830803a
myStringB =MyString@8327473
myStringA != myStringB
----------------------------------------------------------------
myStringA =MyString@2830803a
myStringB =MyString@8327473
myStringA not equal myStringB
作者:
晏有聰
時間:
2012-10-14 23:33
class MyString //自行建立一個字串類別
{
private String mString; //一個字串屬性,用來儲存產生的物件中的字串內容
public void set(String ss) //設定方法,設定mString的內容
{
this.mString = ss;
}
public String get() //取用方法,讀取mString的內容
{
return this.mString;
}
}
public class my_test1
{
public static void main(String[] args)
{
Boolean x;
MyString myStringA,myStringB,myStringC; //建立兩個MyString物件:myStringA,myStringB
myStringA = new MyString(); //建立myStringA的實體
myStringA.set("hello"); //將myStringA的內容設定為 "hello"
myStringC = new MyString();
myStringC.set("hello");
System.out.println("myStringA ="+myStringA);
myStringB = myStringA; //令myStringB等於myStringA
System.out.println("myStringB ="+myStringB);
System.out.println("myStringC ="+myStringC);
System.out.println("myStringA ="+myStringA.get());
System.out.println("myStringB ="+myStringB.get());
System.out.println("myStringC ="+myStringC.get());
if(myStringA == myStringB) //判斷myStringA是否等於myStringB並印出結果
System.out.println("myStringA = myStringB");
else
System.out.println("myStringA != myStringB");
myStringA.set("bye bye");
if(myStringA == myStringB)
System.out.println("myStringA = myStringB");
else
System.out.println("myStringA != myStringB");
x=myStringA.equals(myStringC);
System.out.println("x="+x);
if(myStringA.equals(myStringC))
System.out.println("myStringA equal myStringC");
else
System.out.println("myStringA not equal myStringC");
}
}
複製代碼
回復
6#
ray
作者:
晏有聰
時間:
2012-10-14 23:36
老師不好意思 , 您在上面有提到
1."equals"比較了2個物件的屬性(?) --> 比較正確的說法是比較兩個物件的"內容"~
但是我的程式 X = false , 如果是比較兩個物件的內容 , X應該是等於 true . 不知您能幫我解惑嗎 ?
運算結果如下 :
myStringA =MyString@3d689405
myStringB =MyString@3d689405
myStringC =MyString@1ccdf3c2
myStringA =hello
myStringB =hello
myStringC =hello
myStringA = myStringB
myStringA = myStringB
x=false
myStringA not equal myStringC
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/)
Powered by Discuz! 7.2