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

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

我怎樣才能讓洗牌器方法只洗牌數(shù)組中的某些索引?雖然不改組我想保持不變的索引

我怎樣才能讓洗牌器方法只洗牌數(shù)組中的某些索引?雖然不改組我想保持不變的索引

藍(lán)山帝景 2022-03-10 15:57:58
我的問(wèn)題如下:    char [] letters = {' ', 'a', ' ', 'b', ' ', 'c'};    for(int i = 0; i < letters.length; i ++) {        int random = (int) (Math.random()* letters.length);        char temp = letters[i];        letters [i] = letters [random];        letters [random] = temp;    }這種方法對(duì)數(shù)組進(jìn)行洗牌,很好;但是,我希望 shuffle 方法和 Math.random 方法都忽略空格,并且只隨機(jī)播放具有字母值的索引。進(jìn)一步解釋:我希望字母數(shù)組的輸出使所有空格的索引與它們?cè)瓉?lái)的索引相同,同時(shí)只允許交換包含字母的索引。因此,在通過(guò)此方法后,字母數(shù)組的隨機(jī)可接受輸出示例如下所示:['','b','','c','','a']甚至可能[ ' ', '出租車' ]任何關(guān)于如何實(shí)現(xiàn)這一點(diǎn)的幫助都非常棒......我已經(jīng)嘗試了 for、while 和 if 循環(huán)的所有變體,試圖將 Math.random 方法的邊界限制為僅包含一個(gè)字母的索引,并且相同對(duì)于 for 循環(huán),但我什么也沒(méi)想到。它讓我打敗了。非常感謝任何可以幫助我并解釋一下的人。
查看完整描述

2 回答

?
尚方寶劍之說(shuō)

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

只需跳過(guò)空白索引:


char [] letters = {' ', 'a', ' ', 'b', ' ', 'c'};


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

    int random = (int) (Math.random()* letters.length);


    if (letters[random] == ' ' || letters[i] == ' ') continue; // here


    char temp = letters[i];

    letters [i] = letters [random];

    letters [random] = temp;

}


查看完整回答
反對(duì) 回復(fù) 2022-03-10
?
一只名叫tom的貓

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

使用以下邏輯:


char[] letters = { ' ', 'a', ' ', 'b', ' ', 'c', ' ', 'd' };


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

    int random = (int) (Math.random() * letters.length);


    // observe this

    if (!Character.isWhitespace(letters[random]) && !Character.isWhitespace(letters[i])) { 

        char temp = letters[i];

        letters[i] = letters[random];

        letters[random] = temp;

    }


}

解釋 :


您可以添加一個(gè)簡(jiǎn)單的if條件來(lái)檢查要交換的兩個(gè)元素(即letters[random]和letters[i])是否不是空格。


查看完整回答
反對(duì) 回復(fù) 2022-03-10
  • 2 回答
  • 0 關(guān)注
  • 126 瀏覽
慕課專欄
更多

添加回答

舉報(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)