Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将字符串中的数字增加1?_Java_String_Increment - Fatal编程技术网

Java 如何将字符串中的数字增加1?

Java 如何将字符串中的数字增加1?,java,string,increment,Java,String,Increment,我有一个下面的字符串作为- String current_version = "v2"; 这里的版本也可以是这些字符串中的任何一个-v3或v4或v10或v100或v500或v1000 现在我希望将当前的_版本从v2增加到v3。这意味着我总是需要将当前的_版本增加1 如果当前的_版本是v5,那么我将把它增加到v6 我怎样才能用一根绳子做这个 注:- 我正在从某个方法中获取当前\u版本字符串值,该方法将始终像以下那样返回我:仅v2、v3、v4..为什么不将版本存储为int,并在显示版本时添加字符“

我有一个下面的字符串作为-

String current_version = "v2";
这里的版本也可以是这些字符串中的任何一个-
v3
v4
v10
v100
v500
v1000

现在我希望将当前的_版本从
v2
增加到
v3
。这意味着我总是需要将当前的_版本增加1

如果当前的_版本是
v5
,那么我将把它增加到
v6

我怎样才能用一根绳子做这个

注:-


我正在从某个方法中获取
当前\u版本
字符串值,该方法将始终像以下那样返回我:仅v2、v3、v4..

为什么不将版本存储为int,并在显示版本时添加字符“v”? 如果你想用一个字符串,你可以用一个初始的子字符串,把它解析成int,然后把结果添加到“v”中

 currentVersion = "v" + (Integer.parseInt(currentVersion .substring(1)) + 1);

如果要将v后面的数字解析为int并将其递增1,只需使用子字符串,将1添加到数字中,然后将递增后的数字连接回一个前缀为“v”的字符串即可:

    String version = "v1";
    String newVersion = "v" + (Integer.parseInt(version.substring(1,version.length()))+1);
    System.out.println(newVersion);
或者,您可以在
int
中跟踪当前版本,增加该值,并通过将该int添加到“v”来构造新的
字符串,而无需调用
子字符串()

int version = Integer.parseInt(current_version.replace("v", ""));

然后您可以增加它,并添加一个get
“v”+当前版本

我建议您将该版本存储在int中。因此代码如下所示

int versionNumber = 1;
String version = "v" + versionNumber;
无论何时,只要使用

versionNumber++;
要打印或存储为完整版本,请执行以下操作

int versionNumber = 1;
String version = "v" + versionNumber;

如果您的格式发生变化,这将允许更大的灵活性:

String version = "v1234";
System.out.println("v" + (Integer.parseInt(version.replaceAll("[^0-9]", "")) + 1));

使用正则表达式删除所有非数字,在结果中添加一个。

如果需要其他解决方案,可以使用以下方法:

    String oldVersion = "v100";
    String[] splitString = oldVersion.split("v");
    int newVersion = Integer.valueOf(splitString[1])+1;
    String completeNewVersion = splitString[0] + newVersion;
    System.out.print(completeNewVersion);
uint8_t versionNumber = 1;
char version[40];
sprintf(version,"v %d",versionNumber);

您可以随时增加变量“versionNumber”

这是一种方式。我没有将这个v2存储在我的代码库中,这个字符串
v2
我是从某种方法中获得的。。所以我需要增加1。不回答这个问题,应该是一个注释。你总是知道字符串的格式吗?它总是vXXX吗?是的,它总是Vxxxxx。你的意思是
字符串当前\u version=“v2”
(带引号)?