java - 如何获得最多2个字符串

标签 java

我在数据库中有两条记录,所有列都相同,两者之间唯一有区别的列是名为 txnCo 的列。因此,下一个插入的列将具有更高的值,我想获得更高的最后一个值。在 mysql 中我可以使用 max 函数,但在 Java 中我不能使用 math.max 因为这些不是数字。那么有人有什么建议如何以最好的方式做到这一点吗?

我正在考虑对每个字符串使用 valueOf 函数并比较两者。

最佳答案

strA.compareTo(strB);

这就是您正在寻找的内容。

如果该值 < 0,则第一个字符串按字典顺序位于第二个字符串之前。 > 0,第二个在前面。 = 0,它们相等。

String.compareTo() in the Java API docs .

问题 How do I compare strings in Java? 中也对此进行了描述

请注意 - 它的定义方式可能与 SQL 比较的方式不完全相同,具体取决于编码等。

如果将所有字符串放入任何有序集合(例如 TreeSet)中,则可以像往常一样提取第一个/最后一个,集合“知道”字符串的自然顺序字符串。

TreeSet<String> set = new TreeSet<>();
set.add("string1");
set.add("string2");
// ... //
String minString = set.first();
String maxString = set.last();

关于java - 如何获得最多2个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37010201/

相关文章:

java - 创建传递的 Class.class 参数的新实例

java - 如何使 Commons 配置的 setListDelimiter 起作用?

java - JButton 问题 -- Java Netbeans NullPointerException

JAVA传递原始类型作为函数调用的引用

java - 使用 Class.forName 调用类

java - 这段代码中的每个元素 ("(.)\\1{1,}", "$1") 是做什么的?

java - 更新 JFrame JLabel 图像路径

java - 发布/记录 Spring-REST API

java - 如何在android中将图像转换为base64字符串?

java - PDFBOX 中的右对齐文本?