이 할당에는 대문자로 구성된 문자열에 대한 추론이 포함됩니다. 동일한 클래스에 표시되는 여러 가지 정적 메서드를 구현합니다 (표시되지 않음). 여기에 세부 사항이 있습니다. 1. 첫 번째 메서드는 단일 문자열 매개 변수를 사용하고 해당 문자열의 스크램블 된 버전을 반환합니다. 스크램블 과정은 단어의 첫 글자에서 시작하여 왼쪽에서 오른쪽으로 계속됩니다. 두 개의 연속 문자가 "A"가 아닌 "A"가 아닌 문자로 구성되면 두 문자가 결과 문자열로 교체됩니다. 두 개의 인접한 위치에있는 문자가 바뀌면, 두 위치 중 어느 것도 미래의 스왑에 관련 될 수 없습니다. public static String scrambleWord (문자열 단어) 이 메서드는 주어진 단어 (빈 문자열 또는 대문자 만 포함하는 문자열)를 취하여 위에 제시된 규칙에 따라 단어의 스크램블 버전을 포함하는 문자열을 반환합니다. 다음 표는 몇 가지 단어 및 스크램블 버전의 예를 보여줍니다. 원래 단어 "TAN" "TNA" "아브라카 다 브라" "BARCADABARA" "와우" "와우" "땅 돼지" "ARADVRAK" "계란", "계란" "A" "A" "를 스크램블링 후 "" "ArrayList 할당에서 일부 문자를 스크램블합니다.
내가 사용되는 코드 만이 작동하지 복용량 여기
public class ScrambleWord {
public static void main(String[] args) {
List<String> strList = new ArrayList<String>();
strList.add("TAN");
strList.add("ABRACADABRA");
strList.add("WHOA");
strList.add("EGGS");
strList.add("A");
strList.add("");
System.out.prentln(MainMethod.scrambleWordMeth(strList));
}
class MainMethod {
public static void scrambleWordMeth(List<String> strList) {
int curr = 0;
String res = "";
while (curr < strList.size()) {
String currentString = strList.get(curr);
for(int i = 0; i < currentString.length(); i++){
if (currentString.charAt(i) == 'A' && !(currentString.charAt(i + 1) == 'A')) {
res = res + currentString.substring(curr + 1, curr + 2);
res = res + 'A';
curr = curr + 2;
}
else {
res = res + currentString.substring(curr, curr + 1);
curr++;
}
}
if (curr < strList.size()) {
res = res + currentString.charAt(curr);
//res=res + strList.substring(curr);
}
}
return res;
}
}
}
게시물을 수정하십시오. 그 _unreadable_ – Baby
(위의 적절한 단락 사용에 큰 차이가 있습니다.) – user2864740