第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

不知道如何操作字符串

不知道如何操作字符串

拉丁的傳說(shuō) 2021-11-17 15:41:27
將一個(gè)字符串作為輸入 S。編寫一個(gè)函數(shù),將每個(gè)奇數(shù)字符替換為具有較高 ASCII 代碼的字符,并將每個(gè)偶數(shù)字符替換為具有較低 ASCII 代碼的字符。打印返回的值。 package assignments; import java.util.Scanner; public class strings_odd_even_char {     static Scanner scn = new Scanner(System.in);     public static void main(String[] args) {         String str = scn.nextLine();         for (int i = 0; i < str.length(); i = i + 2) {             char ch = str.charAt(i);             ch = (char)((ch + 1));             System.out.println(ch);         }         for (int j = 1; j < str.length(); j = j + 2) {             char ch = str.charAt(j);             ch = (char)((ch - 1));             System.out.print(ch);         }     } }我的代碼的問(wèn)題在于它首先打印所有奇數(shù)字符的值,然后打印偶數(shù)字符,但我想要的是它們以正確的順序打印,例如輸入 --> abcg ,輸出應(yīng)該是 -->壞的。
查看完整描述

3 回答

?
千萬(wàn)里不及你

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超9個(gè)贊

您只需要迭代一次但執(zhí)行不同的操作(char+1)或(char-1)取決于i:


public static void main(String[] args) {

    String str = scn.nextLine();


    for(int i = 0; i < str.length(); i++) {

        char ch = str.charAt(i);

        if(i % 2 == 0) { // even

            ch += 1;

        } else {         // odd

            ch -= 1;

        }

        System.out.print(ch);

    }

}


查看完整回答
反對(duì) 回復(fù) 2021-11-17
?
精慕HU

TA貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個(gè)贊

只需使用一個(gè)循環(huán)來(lái)處理這兩個(gè)字符:


for (int i = 0; i < str.length(); i = i + 2) {

  char ch = str.charAt(i);

  ch = (char) (ch + 1);

  System.out.print(ch);


  if (i + 1 < str.length()) {

    ch = str.charAt(i + 1);

    ch = (char) (ch - 1);

    System.out.print(ch);

  }

}


查看完整回答
反對(duì) 回復(fù) 2021-11-17
?
幕布斯7119047

TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超8個(gè)贊

我將“incremenet”值保存在一個(gè)變量中,+1并-1在我訪問(wèn)字符時(shí)交替使用:


private static String change(String s) {

    StringBuilder sb = new StringBuilder(s.length());

    int increment = 1;

    for (int i = 0; i < s.length(); ++i) {

        sb.append((char)(s.charAt(i) + increment));

        increment *= -1;

    }

    return sb.toString();

}


查看完整回答
反對(duì) 回復(fù) 2021-11-17
  • 3 回答
  • 0 關(guān)注
  • 189 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)