国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Educoder/頭歌JAVA——JAVA面向?qū)ο螅篠tring類

這篇具有很好參考價值的文章主要介紹了Educoder/頭歌JAVA——JAVA面向?qū)ο螅篠tring類。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

第1關(guān):length()方法與compareTo()方法的使用 - 花名冊

相關(guān)知識

String類的對象的創(chuàng)建

可以按照創(chuàng)建類的對象的一般方法來創(chuàng)建String類的對象:

  1. String string = new String();

也可以直接在創(chuàng)建對象時指定字符串內(nèi)容:

  1. String string1 = "Hello World"; //string1字符串內(nèi)容為"Hello World"
  2. String string2 = ""; //string2字符串內(nèi)容為空

length()方法

String類中的length()方法將返回字符串對象的長度,請看示例:

  1. String string = "abcd";
  2. int len = string.length();
  3. System.out.println(len)

運行上述代碼,執(zhí)行結(jié)果為:

  1. 4

compareTo()方法

String類中的compareTo()方法將返回兩個字符串對象的比較結(jié)果,若相等,返回0。不相等時,從兩個字符串第1個字符開始比較,返回第一個不相等的字符差;另一種情況,較長字符串的前面部分恰巧是較短的字符串,返回它們的長度差。

請看示例:

  1. String s1 = "abc";
  2. String s2 = "abcd";
  3. String s3 = "abcdfg";
  4. String s4 = "1bcdfg";
  5. String s5 = "cdfg";
  6. System.out.println( s1.compareTo(s2) ); // -1 (前面相等,s1長度小1)
  7. System.out.println( s1.compareTo(s3) ); // -3 (前面相等,s1長度小3)
  8. System.out.println( s1.compareTo(s4) ); // 48 ("a"的ASCII碼是97,"1"的的ASCII碼是49,所以返回48)
  9. System.out.println( s1.compareTo(s5) ); // -2 ("a"的ASCII碼是97,"c"的ASCII碼是99,所以返回-2)

編程要求

本關(guān)的編程任務(wù)是補全右側(cè)代碼片段中BeginEnd中間的代碼,具體要求如下:

  • roster1變量為之前的全班花名冊,roster2變量為小明統(tǒng)計的全班花名冊。

  • 你將被要求輸出3行:

    • 第一行為roster1的長度;

    • 第二行為roster2的長度;

    • 第三行為兩個花名冊是否相同,若相同,輸出“相同”;反之輸出“不相同”(若姓名順序不同,也算作不相同)。

package step1;

import java.util.Scanner;

public class Roster {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        /********** Begin *********/
        String str1 = scanner.nextLine();
        String[] roster1 = str1.split(" ");
        int num1 = str1.length();
        String str2 = scanner.nextLine();
        String[] roster2 = str2.split(" ");
        int num2 = str2.length();
        System.out.println(num1);   
        System.out.println(num2);
        if(str1.compareTo(str2)==0){
            System.out.println("相同");
        }
        else{
            System.out.println("不相同");
        }
        /********** End *********/
    }
}

?第2關(guān):substring()方法與indexOf()方法的使用 - 姓名查找

相關(guān)知識

substring()方法

String類中有兩個substring()方法,第一種如下:

  1. String.substring(int start)

其中,start為要開始截取的位置的索引,方法將返回一個字符串,內(nèi)容為原字符串從start位置開始到原字符串結(jié)束中間的數(shù)據(jù)。

例如:

  1. String str = "hello world!";
  2. System.out.println(str.substring(1));
  3. System.out.println(str.substring(3));
  4. System.out.println(str.substring(6));

執(zhí)行以上代碼,結(jié)果如下:

  1. ello world!
  2. lo world!
  3. world!

如果start大于字符串的長度,將會拋出越界異常。

substring()方法:

  1. String.substring(int start, int end)

其中,start為開始位置索引,end為結(jié)束為止索引,方法將返回一個字符串,內(nèi)容為原字符串從start位置開始到end位置結(jié)束中間的數(shù)據(jù)。

例如:

  1. String str = "hello world!";
  2. System.out.println(str.substring(1, 4));
  3. System.out.println(str.substring(3, 5));
  4. System.out.println(str.substring(0, 4));

執(zhí)行以上代碼,結(jié)果如下:

  1. ell
  2. lo
  3. hell

indexOf()方法

indexOf()方法用于在String類的對象中查找子字符串,方法返回一個整數(shù)值,為子字符串的開始位置,若存在多個子字符串,返回數(shù)值最小的整數(shù)值;如果沒有找到子字符串,返回-1。請看示例:

  1. String str = "abcdefghijklmnabc";
  2. System.out.println(str1.indexOf("c")); //結(jié)果為2,為字符"c"第一次出現(xiàn)的位置
  3. System.out.println(str1.indexOf("x")); //結(jié)果為-1,沒有找到字符"x"

編程要求

本關(guān)的編程任務(wù)是補全右側(cè)代碼片段中BeginEnd中間的代碼,具體要求如下:

  • data變量為亂碼文件的文本數(shù)據(jù),由命令行讀入;

  • name變量為需要查找的姓名,由命令行讀入;

  • 你將被要求輸出若干行,每一行為查找到的姓名的位置。

package step2;

import java.util.Scanner;

public class NameSearch {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        /********** Begin *********/
        String data=sc.next();
        String name=sc.next();
        int n=data.indexOf(name);
        //System.out.println(n);
        //int m=data.length();
        int m=n;
        while(n!=-1){
            System.out.println(m);
            data=data.substring(n+2);
            n=data.indexOf(name);
            m=m+n+2;
        }        
        /********** End *********/
    }
}

?第3關(guān):String串類操作 - 文件名與郵箱驗證

相關(guān)知識

為了完成本關(guān)任務(wù),你需要掌握:如何判斷字符串相等。

equals 方法

java中如果要判斷兩個基礎(chǔ)數(shù)據(jù)類型是否相等,使用的是雙等號,例如:1是否等于1,使用的就是1==1,而判斷字符串是否相等需要使用equals方法,這是因為,每一個字符串都可能會有不同的內(nèi)存地址,而==判斷的是內(nèi)存地址是否一致。而有很多情況,兩個字符串的內(nèi)存地址是不同的,但是字符串的值都是一致的,這樣使用==就不能準(zhǔn)確的驗證他們是否相等了。

例如:

  1. String str1 = new String("張三");
  2. String str2 = new String("張三");
  3. System.out.println(str1 == str2);
  4. System.out.println(str1.equals(str2));

輸出結(jié)果:

false true

我們發(fā)現(xiàn)使用==不能準(zhǔn)確的判斷兩個字符串是否相等,而使用equals()方法是可以的。

String 常用方法總結(jié)

頭歌javastring類,java,開發(fā)語言,jvm

編程要求

請仔細閱讀右側(cè)代碼,根據(jù)方法內(nèi)的提示,在Begin - End區(qū)域內(nèi)進行代碼補充,具體任務(wù)如下:

  • 判斷輸入的Java文件名是否正確,判斷郵箱格式是否正確。其中:合法的文件名應(yīng)該以?.java?結(jié)尾;合法的郵箱名中至少要包含?@?, 并要求?@?在?.?之前。
package step3;

public class HelloWorld {

	public void judge(String fileName,String email){
		//請在此添加實現(xiàn)代碼
/********** Begin **********/
int fi=fileName.length();
int em=email.length();
if(fi<6){
    System.out.println("Java文件名無效");
}
else{
    String nn=fileName.substring(fi-5, fi);
    //System.out.println(nn);
    if(!nn.equals(".java")){
        System.out.println("Java文件名無效");
    }
    else{
        System.out.println("Java文件名正確");
    }
}
int a=email.indexOf("@");
int b=email.indexOf(".");
int c=email.indexOf(".@");
if(a==-1|b==-1|c!=-1){
    System.out.println("郵箱名無效");
}
else{
    if(a>b){
        System.out.println("郵箱名無效");
    }
    else{
        if(em>3){
            System.out.println("郵箱名正確");
        }
    }
}
/********** End **********/
	}	
	
}

?第4關(guān):StringBuffer類的定義和使用 - 字母反轉(zhuǎn)

任務(wù)描述

在本關(guān)中,你將被要求編寫一個程序,將一段文本中的各個單詞的字母順序進行反轉(zhuǎn),例如:

oT eb ro ton ot eb 反轉(zhuǎn)后變?yōu)椋?To be or not to be

相關(guān)知識

split方法

在處理字符串的時候我們經(jīng)常需要將他們切割,然后分別處理,比如我們有一個字符串:張三,李四,王五,趙六,現(xiàn)在我們想要將他們的名字拆分出來,變成一個單獨的字符串,如何做呢?

很簡單使用split方法即可。

  1. String str = "張三,李四,王五,趙六";
  2. String[] names = str.split(",");
  3. for (int i = 0; i < names.length; i++) {
  4. System.out.println(names[i]);
  5. }

輸出:

張三

李四

王五

趙六

StringBuffer類

StringBuffer類和String類一樣,也用來代表字符串,只是由于StringBuffer的內(nèi)部實現(xiàn)方式和String不同,StringBuffer在進行字符串處理時,不生成新的對象,所以在內(nèi)存使用上,StringBuffer類要優(yōu)于String類。

StringBuffer類中存在很多和String類一樣的方法,這些方法在功能上是完全一樣的。

StringBuffer類中也有一些獨特的方法,用于幫助我們更方便的實現(xiàn)某些功能。

StringBuffer類的對象的初始化

通常情況下使用構(gòu)造方法對其進行初始化:

  1. StringBuffer stringBuffer = new StringBuffer();

這樣初始化出的StringBuffer對象是一個空的對象。

如果需要創(chuàng)建帶有內(nèi)容的StringBuffer對象,則可以使用:

  1. StringBuffer stringBuffer = new StringBuffer("Hello World!");

這樣初始化出的StringBuffer對象的內(nèi)容就是字符串"Hello World!"。

append()方法

append()方法的作用是追加內(nèi)容到當(dāng)前StringBuffer對象的末尾,類似于字符串的連接,請看示例:

  1. StringBuffer stringBuffer = new StringBuffer("Hello");
  2. stringBuffer.append("World!");
  3. System.out.println(stringBuffer);

執(zhí)行以上代碼,結(jié)果為:

  1. HelloWorld!

reverse()方法

reverse()方法將把當(dāng)前字符序列反轉(zhuǎn)后返回,請看示例:

  1. StringBuffer stringBuffer = new StringBuffer("abc");
  2. System.out.println(stringBuffer.reverse());

執(zhí)行以上代碼,結(jié)果為:

  1. cba

StringBuffer對象和String對象互轉(zhuǎn)

注意,StringBufferString屬于不同的類型,也不能直接進行強制類型轉(zhuǎn)換,下面的代碼都是錯誤的:

  1. StringBuffer s = "abc"; //賦值類型不匹配
  2. StringBuffer s = (StringBuffer)"abc"; //不存在繼承關(guān)系,無法進行強轉(zhuǎn)

正確的對象之間互轉(zhuǎn)代碼如下:

  1. String string1 = "Hello World!";
  2. StringBuffer stringBuffer = new StringBuffer(string1); //String轉(zhuǎn)換為StringBuffer
  3. String string2 = stringBuffer.toString(); //StringBuffer轉(zhuǎn)換為String

編程要求

本關(guān)的編程任務(wù)是補全右側(cè)代碼片段中BeginEnd中間的代碼,具體要求如下:

  • data變量為需要進行反轉(zhuǎn)的文本;

  • ans變量為反轉(zhuǎn)后的文本。文章來源地址http://www.zghlxwxcb.cn/news/detail-772494.html

package step4;

public class Reverse {
    public static StringBuffer start(String data) {
        StringBuffer ans = new StringBuffer();
        /********** Begin *********/
        String[] inf=data.split(" ");
        //System.out.println("inf="+inf[0]);
        //System.out.println("length="+inf.length);
        
        for(int i=0;i<inf.length;i++){
            StringBuffer str = new StringBuffer(inf[i]);
            ans.append(str.reverse()+" ");
        }  
        /********** End *********/
        return ans;
    }
}

到了這里,關(guān)于Educoder/頭歌JAVA——JAVA面向?qū)ο螅篠tring類的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 第六講 Java面向?qū)ο?Java中的異常 (頭歌答案)

    第六講 Java面向?qū)ο?Java中的異常 (頭歌答案)

    目錄 第六講 ?內(nèi)部類 ?異常處理 第1關(guān):Java 中的異常處理機制 第2關(guān):捕獲異常 ? ? ? ? ? ? ? ?源碼 第3關(guān):拋出異常 ? ? ? ? ? ? ??源碼: 第4關(guān):自定義異常 ? ? ? ? ? ? ??源碼 ? (一)什么是異常 異常:程序在運行過程中產(chǎn)生的不正常情況。 一些不被預(yù)期的事件

    2024年02月05日
    瀏覽(19)
  • Educoder/頭歌JAVA——jQuery基礎(chǔ)

    Educoder/頭歌JAVA——jQuery基礎(chǔ)

    目錄 第1關(guān):jQuery入門 相關(guān)知識 環(huán)境安裝 第一個程序 id選擇器 ?第2關(guān):jQuery基本選擇器 相關(guān)知識 類選擇器 元素選擇器 編程要求 ?第3關(guān):過濾選擇器 (一) 相關(guān)知識 設(shè)置css屬性 編程要求 第4關(guān):過濾選擇器 (二) 相關(guān)知識 :not 選擇器 編程要求 ?第5關(guān):tab選項卡 相關(guān)知

    2024年02月07日
    瀏覽(30)
  • ???????頭歌(EduCoder)Java實訓(xùn)作業(yè)答案

    ???????頭歌(EduCoder)Java實訓(xùn)作業(yè)答案

    搜集整理了一份最新最全的頭歌(EduCoder)Java實訓(xùn)作業(yè)答案,分享給大家~ (EduCoder)是信息技術(shù)類實踐教學(xué)平臺。(EduCoder)涵蓋了計算機、大數(shù)據(jù)、云計算、人工智能、軟件工程、物聯(lián)網(wǎng)等專業(yè)課程。超60000個實訓(xùn)案例,建立學(xué)、練、評、測一體化實驗環(huán)境。 ? 第一關(guān) 第二關(guān) C

    2024年02月08日
    瀏覽(156)
  • Educoder/頭歌JAVA——JAVA高級特性:IO流

    Educoder/頭歌JAVA——JAVA高級特性:IO流

    目錄 第1關(guān):什么是IO流 相關(guān)知識 什么是字節(jié) 什么是字符 什么是IO流 第2關(guān):字節(jié)流-輸入輸出 相關(guān)知識 輸入流 輸出流 最佳實踐 編程要求 ?第3關(guān):字符流 - 輸入輸出 相關(guān)知識 Writer Reader 編程要求 ?第4關(guān):復(fù)制文件 相關(guān)知識 read()方法 write()方法 使用字節(jié)流讀寫文件 擴展

    2024年02月03日
    瀏覽(53)
  • Educoder/頭歌JAVA實訓(xùn)——JAVA循環(huán)與分支語句編程練習(xí)

    Educoder/頭歌JAVA實訓(xùn)——JAVA循環(huán)與分支語句編程練習(xí)

    為了完成本關(guān)任務(wù),你需要掌握:1、數(shù)組的定義; 2、循環(huán)語句的熟練使用。 實現(xiàn)思路: 可以通過三層循環(huán)的方式,第一層循環(huán)用于控制百位數(shù)的變化,第二層循環(huán)用于控制十位數(shù)的變化,第三層循環(huán)用于控制個位數(shù)的變化。 由于題目要求百位數(shù)、十位數(shù)、個位數(shù)互不重復(fù)

    2023年04月08日
    瀏覽(121)
  • Educoder/頭歌JAVA——Java Web:基于JSP的網(wǎng)上商城

    Educoder/頭歌JAVA——Java Web:基于JSP的網(wǎng)上商城

    目錄 一、商品列表 本關(guān)任務(wù) 具體要求 結(jié)果輸出 實現(xiàn)代碼 二、商品詳情 本關(guān)任務(wù) JDBC查詢方法封裝 商品相關(guān)信息介紹 具體要求 結(jié)果輸出 實現(xiàn)代碼 三、商品搜索 編程要求 測試說明 實現(xiàn)代碼 四、購物車列表 本關(guān)任務(wù) JDBC查詢方法封裝 購物車相關(guān)信息介紹 編程要求 測試說

    2024年02月01日
    瀏覽(96)
  • 頭歌(educoder)實訓(xùn)作業(yè)題目及答案分享 ——1-4 Java入門 - 分支結(jié)構(gòu)

    頭歌(educoder)實訓(xùn)作業(yè)題目及答案分享 ——1-4 Java入門 - 分支結(jié)構(gòu)

    ??個人簡介 : ?作者簡介:大家好,我是Passenger.n?? ?支持一下:點贊??+收藏??+留言?? ?? 系列專欄:java基礎(chǔ)?? ??格言:花有重開日,人無再少年!?? 萬事開頭難,既然邁開了這一步,那就堅持走下去! 這是我的第一篇博客,希望萌新看了有收獲,大佬看了給指

    2024年02月06日
    瀏覽(114)
  • 頭歌Educoder云計算與大數(shù)據(jù)——實驗五 Java API分布式存儲

    原始電商數(shù)據(jù)都是存儲在關(guān)系型數(shù)據(jù)庫或 NoSQL 數(shù)據(jù)庫上的,是面向OLTP(聯(lián)機事務(wù)處理過程)的;數(shù)據(jù)都是面向業(yè)務(wù)的,而不是面向分析。因此數(shù)據(jù)比較復(fù)雜,表很多關(guān)聯(lián)的數(shù)據(jù)是分散的,不利于統(tǒng)計分析;因此需要把數(shù)據(jù)從多個表里導(dǎo)出來、聯(lián)合起來,找出分析所需要的數(shù)據(jù)項

    2023年04月09日
    瀏覽(94)
  • 頭歌(educoder)實訓(xùn)作業(yè)題目及答案分享 ——1-7 Java入門-分支與循環(huán)練習(xí)

    頭歌(educoder)實訓(xùn)作業(yè)題目及答案分享 ——1-7 Java入門-分支與循環(huán)練習(xí)

    ??個人簡介 : ?作者簡介:大家好,我是Passenger.n?? ?支持一下:點贊??+收藏??+留言?? ?? 系列專欄:java基礎(chǔ)?? ??格言:花有重開日,人無再少年!?? 萬事開頭難,既然邁開了這一步,那就堅持走下去! 這是我的第一篇博客,希望萌新看了有收獲,大佬看了給指

    2024年02月04日
    瀏覽(101)
  • 頭歌(educoder)實訓(xùn)作業(yè)題目及答案分享 ——1-3 Java入門 - 運算符和表達式

    頭歌(educoder)實訓(xùn)作業(yè)題目及答案分享 ——1-3 Java入門 - 運算符和表達式

    ??個人簡介 : ?作者簡介:大家好,我是Passenger.n ?支持一下:點贊??+收藏??+留言?? ?? 系列專欄:java基礎(chǔ)?? ??格言:花有重開日,人無再少年!?? 萬事開頭難,既然邁開了這一步,那就堅持走下去! 這是我新的一篇博客,希望萌新看了有收獲,大佬看了給指路??

    2024年02月07日
    瀏覽(294)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包