gpt4 book ai didi

java - 删除元音的循环,如果第一个循环小于 10,则添加新循环

转载 作者:行者123 更新时间:2023-12-02 12:06:55 25 4
gpt4 key购买 nike

好的,所以我正在创建一个循环,从字符串中删除所有元音,直到字符串等于 10 个字符(后来变为 140 个)。如果循环完成并且推文仍然大于 10 个字符,我们必须使用另一个循环继续随机删除字符(空格除外),直到字符串达到 10 个字符。现在我的程序运行直到第一个循环结束然后停止而不执行另一个循环。我该如何做到这一点,一旦完成元音检查,它就会开始删除随机数?我不允许使用(Stringbuilder、replace 等),所以请原谅代码!这是我到目前为止所拥有的:

import java.util.Random;
import java.util.Scanner;
public class TweetCompressor {
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
String s = "";
System.out.println("Type a tweet: ");
String input = keyboard.nextLine();
Random rand = new Random();
int f = 0;
int tweetLengthAllowed = 10;

for(int i = 0; i < tweetLengthAllowed; i++) {
char c = input.charAt(i);
if(c == 'a'|| c == 'e'|| c == 'i'|| c == 'o'|| c =='u' ||
c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U') {

f = 1;
tweetLengthAllowed++;
}
else{
s = s += c;
f = 0;
}

}
if(s.equals(tweetLengthAllowed) == false){
int tweet = rand.nextInt(tweetLengthAllowed);

String shortenedTweetA = input.substring(0, tweet);
String shortenedTweetB = input.substring(tweet + 1);

input = shortenedTweetA + shortenedTweetB;
f = 0;

}

System.out.println(s);

}
}

最佳答案

我认为你需要替换这一行:

if(s.equals(tweetLengthAllowed) == false){

与:

if(s.length() > tweetLengthAllowed){

尽管这不会给你一个循环。您可能需要:

while(s.length() > tweetLengthAllowed){

在循环内,您需要将缩短的字符串分配回s,而不是input

关于java - 删除元音的循环,如果第一个循环小于 10,则添加新循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46841144/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com