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

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何檢查單行輸入中是否有兩個相同的數(shù)字

如何檢查單行輸入中是否有兩個相同的數(shù)字

素胚勾勒不出你 2023-10-19 21:12:31
我正在使用 eclipse 在 java 中制作撲克游戲,我需要幫助創(chuàng)建代碼來查找單行輸入的 PAIR。如果用戶輸入:12,11,5,2,12那么我如何識別輸入是否有兩個相同的數(shù)字,然后將其打印為一對。所以基本上我已經(jīng)接受了一個字符串輸入,然后使用 split 函數(shù)將其轉(zhuǎn)換為 String 數(shù)組以識別數(shù)字,然后將其轉(zhuǎn)換為 Int 數(shù)組。當(dāng)用戶輸入:12,3,4,5,12-- 它應(yīng)該在輸出中打?。篜AIR
查看完整描述

5 回答

?
慕哥6287543

TA貢獻(xiàn)1831條經(jīng)驗 獲得超10個贊

嘗試使用一套。一個元素只能包含在集合中一次,因此如果數(shù)組中有重復(fù)的數(shù)字,contains()則會返回。true


public static void findPairs(int[] numbers) {

  Set<Integer> set = new HashSet<>();

  for (int number: numbers) {

    if (!set.add(number)) {

      System.out.println("PAIR: " + number);

    }

  }

}

請記住,如果您的數(shù)組包含超過 2 個相同數(shù)字的重復(fù)項,則這將打印PAIR: n多次 - 它不會在列表中找到給定數(shù)字的多個重復(fù)項。


在這種情況下,您可能需要考慮刪除該號碼并跟蹤您已經(jīng)捕獲的對。


查看完整回答
反對 回復(fù) 2023-10-19
?
拉丁的傳說

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

只需使用一個集合,然后添加元素即可。如果 add 返回 false,則存在欺騙,您可以執(zhí)行任何您想要的邏輯。

Set<String> cards = new HashSet<>();

if (!cards.add(something))? {

? ? // match of two cards found

}

如果您需要它是數(shù)字,請使用 Integer,而不是 int,因為后者是基元而不是 obj。


查看完整回答
反對 回復(fù) 2023-10-19
?
明月笑刀無情

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

您可以使用一個數(shù)組,其中位置+1是卡片的編號,例如:

5 5 10 11 7

[0, 0, 0, 0, 2, ... , 1, 0, 0, 1, 1,...]


查看完整回答
反對 回復(fù) 2023-10-19
?
猛跑小豬

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

用戶輸入是如何存儲的。例如,將其存儲為數(shù)組,然后將按要求輸出以下內(nèi)容。


public static void main(String[] args) {

    int[] nums = new int[]{12,11,5,2,12};

    System.out.println(isPair(nums));

}


private static String isPair(int[] nums){

    Set<Integer> set = new HashSet<>();

    for(int n : nums){

        if(set.contains(n)){

            return "PAIR";

        }else{

            set.add(n);

        }

    }

    return null;

}


查看完整回答
反對 回復(fù) 2023-10-19
?
滄海一幻覺

TA貢獻(xiàn)1824條經(jīng)驗 獲得超5個贊

正如其他答案所指出的,使用 Set 可以很容易地找到重復(fù)項,但無法區(qū)分一對、三條和四邊形之間的區(qū)別,或者兩對和葫蘆之間的區(qū)別。它也無助于找到剩下的撲克牌。

更好的方法是簡單地對用于表示卡片的數(shù)字?jǐn)?shù)組進(jìn)行排序,然后迭代排序的列表,查找對和三元組(現(xiàn)在將是相鄰的)。這也將幫助您尋找順子,并有助于在相似牌之間進(jìn)行排名。

另外,通常最好從上到下尋找手牌:即,檢查同花順,然后四邊形,然后葫蘆,然后同花......一直到一對和沒有對。


查看完整回答
反對 回復(fù) 2023-10-19
  • 5 回答
  • 0 關(guān)注
  • 254 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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