그래서이 미니 프로젝트를 가지고 있습니다. 기본적으로 자바에서 문자열이 플러시인지 확인하는 간단한 방법입니다. 나는 자바의 초심자이며 (카드 게임/포커 ...) 나는이 모든 것을 처음 접한다. , 하트 3 개, 하트 7 개, 하트 8 개, 스페이드 2 개. 순위는 문자열의 1, 3, 5, 7, 9 번째 색인에 있습니다. 문자열은 플러시를 위해 같은 순위의 5 개가 있어야합니다.루프의 여러 조건을 사용하여 문자열의 다른 인덱스를 비교하려면 어떻게합니까?
public class CardProblemss {
String hand = "Kh3h7h8h2h";
public boolean hasFlush(String hand) {
String suit1 = Character.toString(hand.charAt(1));
String suit2 = Character.toString(hand.charAt(3));
String suit3 = Character.toString(hand.charAt(5));
String suit4 = Character.toString(hand.charAt(7));
String suit5 = Character.toString(hand.charAt(9));
int flushcounter = 0;
while (true) {
if (suit1.equals(suit2)) {
flushcounter++;
}
else if (suit2.equals(suit3)) {
flushcounter++;
}
else if (suit3.equals(suit4)) {
flushcounter++;
}
else if (suit4.equals(suit5)) {
flushcounter++;
}
System.out.println(flushcounter);
if (flushcounter >= 5) {
return true;
}
else {
return false;
}
}
}
이제 코드가 bleh라고 말할 수 있습니다. 하지만 내 질문은 기본적으로 자체 charAt (인덱스) 메서드를 사용하는 루프를 공식화 할 수 있습니다? 손의 순위가 인덱스 1,3,5,7,9에 있기 때문에 매번 실행될 때마다이 메소드의 인덱스를 2 씩 증가시키는 루프를 작성할 수 있습니까? 아니면 제가 할 수있는 더 효율적인 방법이 있습니까? 감사합니다.
예, 유 캔 ... '에 대해 (나는()을
sidgate