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

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

生成一系列不可猜測(cè)的促銷代碼

生成一系列不可猜測(cè)的促銷代碼

我正在尋找一種生成一系列促銷代碼的方法。如果不滿足這兩個(gè)要求,那將是微不足道的。它需要是一個(gè)范圍(不是將每個(gè)促銷代碼保存在數(shù)據(jù)庫(kù)中)以使其快速,并且它是不可猜測(cè)的,因此它不能生成像這樣的代碼 000-000-001, 000-000-002, 000- 000-003...等等。有沒(méi)有算法可以解決這個(gè)問(wèn)題?我可以嘗試使用某種哈希來(lái)解決它,但嘗試自己解決這個(gè)安全問(wèn)題可能會(huì)讓服務(wù)受到我沒(méi)有想到的攻擊。
查看完整描述

2 回答

?
DIEA

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

我認(rèn)為您的第一個(gè)要求(不將每個(gè)促銷代碼保存在數(shù)據(jù)庫(kù)中)是有問(wèn)題的。


那么問(wèn)題來(lái)了,同一個(gè)優(yōu)惠碼可以多次兌換嗎?


如果這是不允許的,那么您無(wú)論如何都必須將已經(jīng)兌換的代碼存儲(chǔ)在某個(gè)持久數(shù)據(jù)存儲(chǔ)中,那么為什么不從一開始就將生成的代碼以及指示它是否已兌換的標(biāo)志存儲(chǔ)在持久數(shù)據(jù)存儲(chǔ)中呢?


如果您不想存儲(chǔ)所有代碼/無(wú)法存儲(chǔ)所有代碼,您仍然可以使用Random帶有當(dāng)前廣告系列獨(dú)有的種子的 a :


long seed = 20190921065347L; // identifies your current campaign

Random r = new Random(seed);

for (int i = 0; i < numCodes; i++) {

    System.out.println(r.nextLong());

}

或者


long seed = 20190921065347L; // identifies your current campaign

Random r = new Random(seed);

r.longs(numCodes, 100_000_000_000_000L, 1_000_000_000_000_000L)

 .forEach(System.out::println);

要確定代碼是否有效,您可以再次生成相同的代碼:


long seed = 20190921065347L; // identifies your current campaign

Random r = new Random(seed);

System.out.println(

    r.longs(numCodes, 100_000_000_000_000L, 1_000_000_000_000_000L)

     .anyMatch(l -> l == 350160558695557L));


查看完整回答
反對(duì) 回復(fù) 2023-08-16
?
一只萌萌小番薯

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

像這樣的東西會(huì)起作用嗎?


      Random r = new Random();

      long start = 1_000_000_000;

      long end = 10_000_000_000L;


      long n = r.longs(1, start, end).reduce(0, (a, b) -> b);

      String s = String.format("%,d", n).replace(",", "-");

      System.out.println(s);


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

添加回答

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