package com.study.core.test2;
import java.util.ArrayList;
import java.util.List;
import java.util.Stack;
/**
* @author mlj
* @date 2024年03月14日 10:04
*/
public class Test0314 {
public static void main(String[] args) {
String string = "11a2328f343";
int maxNumber = getMaxNumber(string);
System.out.println(maxNumber);
}
/**
* 输入一个字符串;输出最大正整数所在的位置, 如果输入没有正整数,则返回0
*
* @return int
* @author mlj
* @date 2024/3/14 10:42
*/
public static int getMaxNumber(String string) {
char[] chars = string.toCharArray();
// 最长正整数
int a = 0;
// 目前连续正整数
StringBuilder b = new StringBuilder();
for (char aChar : chars) {
String s = Character.toString(aChar);
if (isNumber(s) > 0) {
b.append(s);
} else {
if (!b.toString().equals("")) {
//比较大小
int bint = Integer.parseInt(b.toString());
a = Math.max(a, bint);
b.setLength(0);
}
}
}
//结束再比较一次大小
if (!b.toString().equals("")) {
//比较大小
int bint = Integer.parseInt(b.toString());
a = Math.max(a, bint);
b.setLength(0);
}
if (a > 0) {
String s = String.valueOf(a);
int i = string.indexOf(s);
// 输出位置
System.out.println(i + "," + (i + s.length() - 1));
}
return a;
}
/**
* 是否是数
*
* @param s
* @return int
* @author mlj
* @date 2024/3/14 10:50
*/
public static int isNumber(String s) {
try {
return Integer.parseInt(s);
} catch (NumberFormatException n) {
return -1;
}
}
}
输入一个字符串,输出最大正整数所在的位置, 如果输入没有正整数,则返回0
于 2024-03-14 11:39:28 首次发布