java - 如何比较数字字符串?

标签 java string

我有一个长度为 X 的数字字符串数组(“32”、“49”、“2”,...),我需要找到该数组中的最大数字并返回位置( array[3]是最大的数)

是否有像 array[0].isLessThan(array[3]) 这样的库?或者类似的东西?

到目前为止的计划:

int max 0

for(i=1; i<X; i++){

if(array(max).isLessThan(array[i]))
     max = i;
}

最佳答案

我建议在比较两个值时将值转换为整数。

您需要跟踪最大值和索引。该解决方案假设所有值都是非负的(因为我将 max 设置为 -1),但您可以轻松地将 max 更改为 int min 或类似的值。

int max = -1;
int index = -1;

for (int i = 0; i < array.Length; i++)
{
    int value = Integer.parse(array[i]);
    if (value > max)
    {
        max = value;
        index = i;
    }
}

此时您已获得数组中最高值的索引。如果有多个最大值,您可以存储索引数组。

关于java - 如何比较数字字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14993348/

相关文章:

javascript 正则表达式修复不替换图像 url

java - 方法与 ? extends Collections<String> 不适用于 Set<String>

java - 在Web应用程序中同时访问数据库

java - 解析嵌套数组字符串

string - JPA 字符串比较

c - char a[50][50] 在 C 中意味着什么?

java - 绑定(bind)数据成员的 Hql 查询

java - Spring Cloud Stream kafka聚合使用 Autowiring bean的新实例

java - BufferedImage 和 createScreenCapture 产生错误的颜色

string - Clojure 中惯用的字符串旋转