<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 84,  comments - 54,  trackbacks - 0
    Java是一種真正的面向對象的語言,即使是開發簡單的程序,也必須設計對象。Java自身也為我們提供了許多已設計好的類,要想靈活使用Java進行編程,熟悉Java的這些主要類將是必不可少的前提條件之一。

    ?String類

    ?顧名思義,String是串的意思,這個類是字符串常量的類。相信使用過C語言進行編程的人都知道字符串是怎么回事,這里就不再進行贅述了。但有一點要說明的是,Java中的字符串和C語言中的字符串是有區別的。

    ?在C語言中,并沒有真正意義上的字符串,C語言中的字符串就是字符數組,使用起來非常的靈活。而在Java中,字符串常量是一個類,String類,它和字符數組是不同的。

    ?下面先介紹一下String類的構造函數:


    ?public?String()
    ??

    ??

    ?這個構造函數用來創建一個空的字符串常量。如:?


    ?String?test=new?String();
    ??

    ??

    ?或:?


    ?String?test;

    ?test=new?String();

    ?public?String(String?value?)
    ??

    ??

    ?這個構造函數用一個已經存在的字符串常量作為參數來創建一個新的字符串常量。另外值得注意的是,Java會為每個用雙引號"......"括起來的字符串常量創建一個String類的對象。?

    ?如:?


    ?String?k="Hi.";
    ??

    ??

    ?Java會為"Hi."創建一個String類的對象,然后把這個對象賦值給k。等同于:?


    ?String?temp=new?String("Hi.");

    ?String?k=temp;
    ??

    ??

    ?這個構造函數的用法如:?


    ?String?test=new?String(k);?
    ?(注:k是一個String類的對象)

    ?String?test=new?String("Hello,?world.");

    ?public?String(?char?value[]?)
    ??

    ??

    ?這個構造函數用一個字符數組作為參數來創建一個新的字符串常量。用法如:?


    ?char?z[]={'h','e','l','l','o'};

    ?String?test=new?String(z);
    ??

    ??

    ?注:此時test中的內容為"hello"?


    ?public?String(?char?value[],?
    ?int?offset,?int?count?)
    ??

    ??

    ?這個構造函數是對上一個的擴充,用一句話來說,就是用字符數組value,從第offset個字符起取count個字符來創建一個String類的對象。用法如:?


    ?char?z[]={'h','e','l','l','o'};

    ?String?test=new?String(z,1,3);
    ??

    ??

    ?注:此時test中的內容為"ell",數組中,下標0表示第一個元素,1表示第二個元素……?

    ?如果?起始點offset?或?截取數量count?越界,將會產生異常。?


    ?StringIndexOutOfBoundsException

    ?public?String(?StringBuffer?buffer?)
    ??

    ??

    ?這個構造函數用一個StringBuffer類的對象作為參數來創建一個新的字符串常量。String類是字符串常量,而StringBuffer類是字符串變量,是不同的。StringBuffer類將在后面進行介紹。?

    ?String類的方法有:?


    ?public?char?charAt(?int?index?)
    ??

    ??

    ?這個方法用來獲取字符串常量中的一個字符。參數index指定從字符串中返回第幾個字符,這個方法返回一個字符型變量。用法如:?


    ?String?s="hello";

    ?char?k=s.charAt(0);

    ?(注:此時k的值為'h')

    ?public?int?compareTo(?String?anotherString?)
    ??

    ??

    ?這個方法用來比較字符串常量的大小,參數anotherString為另一個字符串常量。若兩個字符串常量一樣,返回值為0。若當前字符串常量大,則返回值大于0。若另一個字符串常量大,則返回值小于0。用法如:?


    ?String?s1="abc";

    ?String?s2="abd";

    ?int?result=s2.compareTo(s1);

    ?(注:result的值大于0,
    ?因為d在ascII碼中排在c的后面,則s2>s1)

    ?public?String?concat(?String?str?)
    ??

    ??

    ?這個方法將把參數??字符串常量str接在當前字符串常量的后面,生成一個新的字符串常量,并返回。用法如:?


    ?String?s1="How?do?";

    ?String?s2="you?do?";

    ?String?ss=s1.concat(s2);

    ?(注:ss的值為"How?do?you?do?")

    ?public?boolean?startsWith(?String?prefix?)
    ??

    ??

    ?這個方法判斷當前字符串常量是不是以參數??prefix字符串常量開頭的。是,返回true。否,返回false。?用法如:?


    ?String?s1="abcdefg";

    ?String?s2="bc";

    ?boolean?result=s1.startsWith(s2);

    ?(注:result的值為false)

    ?public?boolean?startsWith
    ?(?String?prefix,?int?toffset?)
    ??

    ??

    ?這個重載方法新增的參數toffset指定?進行查找的起始點。?


    ?public?boolean?endsWith(?String?suffix?)
    ??

    ??

    ?這個方法判斷當前字符串常量是不是以參數??suffix字符串常量結尾的。是,返回true。否,返回false。用法如:?


    ?String?s1="abcdefg";

    ?String?s2="fg";

    ?boolean?result=s1.endsWith(s2);

    ?(注:result的值為true)

    ?public?void?getChars
    ?(?int?srcBegin,?int?srcEnd,?
    ?char?dst[],?int?dstBegin?)
    ??

    ??

    ?這個方法用來從字符串常量中截取一段字符串并轉換為字符數組。參數srcBegin為截取的起始點,srcEnd為截取的結束點,dst為目標字符數組,dstBegin指定將截取的字符串放在字符數組的什么位置。實際上,srcEnd為截取的結束點加1,srcEnd-srcBegin為要截取的字符數,用法如:?


    ?String?s="abcdefg";

    ?char?z[]=new?char[10];

    ?s.getChars(2,4,z,0);

    ?(注:z[0]的值為'c',z[1]的值為'd',
    ?截取了兩個字符?4-2=2)

    ?public?int?indexOf(?int?ch?)
    ??

    ??

    ?這個方法的返回值為字符ch在字符串常量中從左到右第一次出現的位置。若字符串常量中沒有該字符,則返回-1。用法如:?


    ?String?s="abcdefg";

    ?int?r1=s.indexOf('c');

    ?int?r2=s.indexOf('x');

    ?(注:r1的值為2,r2的值為-1)

    ?public?int?indexOf
    ?(?int?ch,?int?fromIndex?)
    ??

    ??

    ?這個方法是對上一個方法的重載,新增的參數fromIndex為查找的起始點。用法如:?


    ?String?s="abcdaefg";

    ?int?r=s.indexOf('a',1);

    ?(注:r的值為4)

    ?public?int?indexOf(?String?str?)
    ??

    ??

    ?這個重載方法返回字符串常量str在當前字符串常量中從左到右第一次出現的位置,若當前字符串常量中不包含字符串常量str,則返回-1。用法如:?


    ?String?s="abcdefg";

    ?int?r1=s.indexOf("cd");

    ?int?r2=s.indexOf("ca");

    ?(注:r1的值為2,r2的值為-1)

    ?public?int?indexOf
    ?(?String?str,?int?fromIndex?)
    ??

    ??

    ?這個重載方法新增的參數fromIndex為查找的起始點。以下四個方法與上面的四個方法用法類似,只是在字符串常量中從右向左進行查找。?


    ?public?int?lastIndexOf(?int?ch?)

    ?public?int?lastIndexOf(?int?ch,?int?fromIndex?)

    ?public?int?lastIndexOf(?String?str?)

    ?public?int?lastIndexOf(?String?str,?int?fromIndex?)

    ?public?int?length()
    ??

    ??

    ?這個方法返回字符串常量的長度,這是最常用的一個方法。用法如:?


    ?String?s="abc";

    ?int?result=s.length();

    ?(注:result的值為3)

    ?public?char[]?toCharArray()
    ??

    ??

    ?這個方法將當前字符串常量轉換為字符數組,并返回。用法如:?


    ?String?s="Who?are?you?";

    ?char?z[]=s.toCharArray();

    ?public?static?String?valueOf(?boolean?b?)

    ?public?static?String?valueOf(?char?c?)

    ?public?static?String?valueOf(?int?i?)

    ?public?static?String?valueOf(?long?l?)

    ?public?static?String?valueOf(?float?f?)

    ?public?static?String?valueOf(?double?d?)
    ??

    ??

    ?以上6個方法可將boolean、char、int、long、float和double?6種類型的變量轉換為String類的對象。用法如:?


    ?String?r1=String.valueOf(true);
    ?(注:r1的值為"true")

    ?String?r2=String.valueOf('c');
    ?(注:r2的值為"c")

    ?float?ff=3.1415926;

    ?String?r3=String.valueOf(ff);
    ?(注:r3的值為"3.1415926")
    ??

    ??

    ?StringBuffer?類?

    ?String類是字符串常量,是不可更改的常量。而StringBuffer是字符串變量,它的對象是可以擴充和修改的。?

    ?String類的構造函數?


    ?public?StringBuffer()
    ??

    ??

    ?創建一個空的StringBuffer類的對象。?


    ?public?StringBuffer(?int?length?)
    ??

    ??

    ?創建一個長度為?參數length?的StringBuffer類的對象。?

    ?注意:如果參數length小于0,將觸發NegativeArraySizeException異常。?


    ?public?StringBuffer(?String?str?)
    ??

    ??

    ?用一個已存在的字符串常量來創建StringBuffer類的對象。?

    ?StringBuffer類的方法有:?


    ?public?String?toString()
    ??

    ??

    ?轉換為String類對象并返回。由于大多數類中關于顯示的方法的參數多為String類的對象,所以經常要將StringBuffer類的對象轉換為String類的對象,再將它的值顯示出來。用法如:?


    ?StringBuffer?sb=new?StringBuffer("How?are?you?");

    ?Label?l1=new?Label(sb.toString());?

    ?(注:聲明一個標簽對象l1,l1上的內容為How?are?you?)

    ?public?StringBuffer?append(?boolean?b?)

    ?public?StringBuffer?append(?char?c?)?
    ?public?StringBuffer?append(?int?i)?
    ?public?StringBuffer?append(?long?l?)

    ?public?StringBuffer?append(?float?f?)

    ?public?StringBuffer?append(?double?d?)
    ??

    ??

    ?以上6個方法可將boolean、char、int、long、float和double?6種類型的變量追加到StringBuffer類的對象的后面。用法如:?


    ?double?d=123.4567;

    ?StringBuffer?sb=new?StringBuffer();

    ?sb.append(true);

    ?sb.append('c').append(d).append(99);

    ?(注:sb的值為truec123.456799)

    ?public?StringBuffer?append(?String?str?)
    ??

    ??

    ?將字符串常量str追加到StringBuffer類的對象的后面。?


    ?public?StringBuffer?append(?char?str[]?)
    ??

    ??

    ?將字符數組str追加到StringBuffer類的對象的后面。?


    ?public?StringBuffer?append
    ?(?char?str[],?int?offset,?int?len?)
    ??

    ??

    ?將字符數組str,從第offset個開始取len個字符,追加到StringBuffer類的對象的后面。?
    ?public?StringBuffer?insert
    ?(?int?offset,?boolean?b?)

    ?public?StringBuffer?insert
    ?(?int?offset,?char?c?)

    ?public?StringBuffer?insert
    ?(?int?offset,?int?i?)

    ?public?StringBuffer?insert
    ?(?int?offset,?long?l?)

    ?public?StringBuffer?insert
    ?(?int?offset,?float?f?)

    ?public?StringBuffer?insert
    ?(?int?offset,?double?d?)

    ?public?StringBuffer?insert
    ?(?int?offset,?String?str?)

    ?public?StringBuffer?insert
    ?(?int?offset,?char?str[]?)
    ??

    ? ?

    ?將boolean、char、int、long、float、double類型的變量、String類的對象或字符數組插入到StringBuffer類的對象中的第offset個位置。用法如:?


    ?StringBuffer?sb=new?StringBuffer("abfg");

    ?sb.insert(2,"cde");
    ?(注:sb的值為abcdefg)

    ?public?int?length()
    ??

    ??

    ?這個方法返回字符串變量的長度,用法與String類的length方法類似。?

    ?Math?類?

    ?數學類包含了許多數學函數,如sin、cos、exp、abs等。Math類是一個工具類,它在解決與數學有關的一些問題是有著非常重要的作用。?

    ?這個類有兩個靜態屬性:E和PI。E代表數學中的e?2.7182818,而PI代表派pi?3.1415926。引用時,用法如:Math.E?和?Math.Pi。這個類的方法有:?


    ?public?static?int?abs(?int?a?)

    ?public?static?long?abs(?long?a?)

    ?public?static?float?abs(?float?a?)

    ?public?static?double?abs(?double?a?)
    ??

    ??

    ?abs方法用來求絕對值。?


    ?public?static?native?double?acos(?double?a?)
    ??

    ??

    ?acos求反余弦函數。?


    ?public?static?native?double?asin(?double?a?)
    ??

    ??

    ?asin求反正弦函數。?


    ?public?static?native?double?atan(?double?a?)
    ??

    ??

    ?atan求反正切函數。?


    ?public?static?native?double?ceil(?double?a?)
    ??

    ??

    ?ceil返回?最小的?大于a的整數。?


    ?public?static?native?double?cos(?double?a?)
    ??

    ??

    ?cos求余弦函數。?


    ?public?static?native?double?exp(?double?a?)
    ??

    ??

    ?exp求e的a次冪。?


    ?public?static?native?double?floor(?double?a?)
    ??

    ??

    ?floor返回?最大的?小于a的整數。?


    ?public?static?native?double?log(?double?a?)
    ??

    ??

    ?log返回lna。?


    ?public?static?native?double?
    ?pow(?double?a,?double?b?)
    ??

    ??

    ?pow求a的b次冪。?


    ?public?static?native?double?sin(?double?a?)
    ??

    ??

    ?sin求正弦函數。?


    ?public?static?native?double?sqrt(?double?a?)
    ??

    ??

    ?sqrt求a的開平方。?


    ?public?static?native?double?tan(?double?a?)
    ??

    ??

    ?tan求正切函數。?


    ?public?static?synchronized?double?random()
    ??

    ??

    ?返回0到1之間的隨機數。?

    ?使用這些方法時,用法為Math.*****?(*****為方法名)。用法如:?


    ?int?a=Math.abs(124);

    ?int?b=Math.floor(-5.2);

    ?double?s=Math.sqrt(7);

    posted on 2007-01-03 22:00 JavaCoffe 閱讀(718) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2007年1月>
    31123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    常用鏈接

    留言簿(5)

    隨筆分類(80)

    收藏夾(1)

    最新隨筆

    積分與排名

    • 積分 - 58039
    • 排名 - 897

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: 超清首页国产亚洲丝袜| 亚洲视频在线不卡| 桃子视频在线观看高清免费视频 | 久久99亚洲综合精品首页| 国偷自产一区二区免费视频| 国产精品亚洲综合五月天| 亚洲午夜爱爱香蕉片| h视频在线观看免费完整版| 亚洲AV无码XXX麻豆艾秋| 亚洲区小说区图片区QVOD| 国产亚洲综合网曝门系列| 99无码人妻一区二区三区免费| 国产成人综合亚洲一区| 亚洲精品资源在线| 国产精品亚洲美女久久久| 免费人成在线视频| a毛片免费全部在线播放**| 亚洲人成综合网站7777香蕉| 国产亚洲av片在线观看18女人| 97免费人妻无码视频| 美女被免费网站91色| 亚洲人成电影网站色www| 精品亚洲成a人片在线观看| 国产成人亚洲综合无码| 成人无遮挡毛片免费看| 人妻丰满熟妇无码区免费| 成人免费夜片在线观看| 亚洲精品中文字幕无码A片老| 婷婷久久久亚洲欧洲日产国码AV | 又色又污又黄无遮挡的免费视 | 思思99re66在线精品免费观看| 99在线在线视频免费视频观看 | 成人免费午夜视频| 久久综合给合久久国产免费| 一区二区三区免费在线视频| 亚洲三级高清免费| 亚洲人成网站在线观看播放动漫| 日韩欧美一区二区三区免费观看| 免费国产99久久久香蕉| 一区二区三区免费看| 亚洲AⅤ男人的天堂在线观看|