用字符串替换整数

时间:2016-10-15 14:23:02

标签: java

问题是将素数系列打印到n。但是如果任何素数包含数字7,则它被替换为S. 例如,如果n = 7,则系列将是 2 3 5 S 11 13 S. 我该怎么做?

3 个答案:

答案 0 :(得分:0)

Here是如何查找和打印素数的示例。之后,您只需检查数字7的每个数字并替换。

在网站上的代码中,可以使用简单的字符串包含方法来完成。

var stringValue = "thisMagaizineRoomcode";
re = /[A-Z][^A-Z]*$/;
re.exec(stringValue);
stringValue.match(re);

答案 1 :(得分:0)

这不是最佳方式,但应该有效。测试它是否为素数的函数:

private boolean isPrime(int n) 
{
    for(int i = 2; i < n; i++) 
    {
        if(n % i == 0)
            return false;
    }
    return true;
}

执行主循环的代码:

  for (int i = 2; i <= number; i++)
        {
            if(isPrime(i)) 
            {
                if(Integer.valueOf(i).toString().contains("7")) {
                   System.out.print("S ");
                } else  {
                  System.out.print(i + " ");
                }
            }
        }

答案 2 :(得分:0)

如果您的系列包含在int数组中,则将其转换为String

int[] arPrimes = {2,3,5,7,11,13,17, ... }; //generate your prime numbers series

String strPrimes = Arrays.toString(array);

然后,你应该有这个序列:

strPrimes = "2, 3, 5, 7, 11, ... ";

您只需使用"7";

替换包含"S"的子字符串
String strPrimes7S = strPrime.replaceAll(",([0-9]*7+[0-9]*)", ",S");