簡體   English   中英

有沒有辦法在我的字符串中單獨增加每個字母?

[英]Is there a way to increment each letter individually in my string?

我試圖通過這樣做來“猜測”密碼。

這就是我目前嘗試增加它的方式:

while (guess != password) {
    while (guess.charAt(j) != password.charAt(j)) {
        (guess.charAt(j) + 1);
        if (guess.charAt (j) == password.charAt(j)) {
            j++;
        }
    }
}

這是一種蠻力的方法來做到這一點。 如評論中所述,您可以從將 String 轉換為 char[] 開始,但實際上沒有意義,因為您總是知道答案。

https://replit.com/@notoreous/guesspwd#Main.java

class Main {
  public static void main(String[] args) {
    String password = "password";

    String guess = guessPassword(password);

    System.out.println("I guess: " + guess);
    System.out.println("Actual: " + password);
  }

  private static String guessPassword(String password) {
    return new String(guess(new char[password.length()], password.toCharArray()));
  }

  private static char[] guess(char[] guess, char[] password) {
    for (int i = 0; i < password.length; i++) {
      if (guess[i] == password[i]) {
        continue;
      } else {
        guess[i]++;
        i--;
      }
    }
    return guess;
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM