当前位置: 首页 > 知识库问答 >
问题:

编码BAT(字符串-2开始)字符串故障

姬捷
2023-03-14

问题:返回给定字符串的一个版本,其中对于字符串中的每个星号(),其左右两侧的星号和字符都消失了。所以“abcd”产生“ad”,而“abcd”也产生“ad”。例如starOut(“abcd”)→ “ad”开始(“abcd”)→ “ad”starOut(“smeilly”)→ “傻”

我知道网上有答案,但我不想复制它们。我已经开始使用它的大部分内容,但不知道如何去掉空格并转换回字符串?如果你们有更好的解决方案,请随时提供。请不要提供基于正则表达式的解决方案。

public static String starOut(String str) {
    char[] array = str.toCharArray();
    for(int i = 0; i < array.length; i++) {
        if(array[i] == '*' && i != 0) {
            if(array[i - 1] != '*') {
                array[i - 1] = ' ';
            }
            if(array[i + 1] != '*') {
                array[i + 1] = ' ';
            }
        }
        //Rest of Code...
        if()
    }
   return str;
}

共有1个答案

印曜灿
2023-03-14

您可以获取代码,然后循环遍历数组并将其附加到StringBuilder。

但是,如果输入可以包含空格,这将是有问题的,因为我们只是忽略所有的空格。如果输入可以包含空白,可以考虑将字符设置为其他对象,或者使用对象字符,这样就可以将其设置为NULL。

public static String starOut(String str) {
    char[] array = str.toCharArray();
    for (int i = 0; i < array.length; i++)
        if (array[i] == '*') {
            if (i - 1 >= 0 && array[i - 1] != '*')
                array[i - 1] = ' ';
            if (i + 1 < array.length && array[i + 1] != '*')
                array[i + 1] = ' ';
            array[i] = ' ';
        }
    StringBuilder sb = new StringBuilder();
    for (char c : array)
        if (c != ' ')
            sb.append(c);
    return sb.toString();
}
 类似资料:
  • 此代码未通过此标准的测试:给定一个字符串,计算以“y”或“z”结尾的单词数——因此“重”中的“y”和“fez”中的'z”计数,而不是“黄色”中的‘y’(不区分大小写)。如果一个单词后面没有一个字母,我们会说一个y或z在单词的末尾。(注意:Character.islet(char)测试char是否为字母。) 我用手跟踪它,但似乎不明白为什么它在许多测试中都不工作。例如,在“day fyyyz”中,它

  • 键盘输入 电脑的智能,一种体现就是可以接受用户通过键盘输入的内容。 通过Python能不能实现这个简单的功能呢?当然能,要不然Python如何横行天下呀。 不过在写这个功能前,要了解函数: Python 2:raw_input() Python 3: input() 这是Python的内建函数(built-in function)。关于内建函数,可以分别通过下面的链接查看: Python 2的内建

  • 在大多数的情况下,API所支持模式匹配的基本形式是匹配字符串,如果正则表达式是foo,输入的字符串也是 foo,这个匹配将会是成功的,因为这两个字符串是相同的。试着用测试用具来测试一下: Enter your regex: foo Enter input string to search: foo I found the text "foo" starting at index 0 and end

  • 问题内容: 我收到一个json数据对象,然后从中提取一个字符串 然后我尝试使该字符串适合在URL中使用 但它不起作用 如果我对newCountryString进行了硬编码,它将起作用,为什么呢? 问题答案: 用这个 - 此代码将使用给定的编码返回接收方的表示形式,以确定将接收方转换为合法URL字符串所需的转义百分比。 有关更多详细信息:https : //developer.apple.com/d

  • 字符编码 我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是655

  • 字符编码 我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是655