首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从输入模式如下的java字符串输入中提取正整数和负整数?

从输入模式如下的Java字符串输入中提取正整数和负整数可以通过正则表达式来实现。以下是一个示例代码:

代码语言:txt
复制
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class NumberExtractor {
    public static void main(String[] args) {
        String input = "abc 123 def -456 ghi 789";
        List<Integer> positiveIntegers = extractPositiveIntegers(input);
        List<Integer> negativeIntegers = extractNegativeIntegers(input);

        System.out.println("Positive Integers: " + positiveIntegers);
        System.out.println("Negative Integers: " + negativeIntegers);
    }

    public static List<Integer> extractPositiveIntegers(String input) {
        List<Integer> positiveIntegers = new ArrayList<>();
        Pattern pattern = Pattern.compile("\\b\\d+\\b");
        Matcher matcher = pattern.matcher(input);

        while (matcher.find()) {
            int number = Integer.parseInt(matcher.group());
            if (number > 0) {
                positiveIntegers.add(number);
            }
        }

        return positiveIntegers;
    }

    public static List<Integer> extractNegativeIntegers(String input) {
        List<Integer> negativeIntegers = new ArrayList<>();
        Pattern pattern = Pattern.compile("-\\b\\d+\\b");
        Matcher matcher = pattern.matcher(input);

        while (matcher.find()) {
            int number = Integer.parseInt(matcher.group());
            negativeIntegers.add(number);
        }

        return negativeIntegers;
    }
}

上述代码中,我们使用了正则表达式来匹配字符串中的正整数和负整数。extractPositiveIntegers方法用于提取正整数,extractNegativeIntegers方法用于提取负整数。通过使用PatternMatcher类,我们可以在字符串中找到匹配正则表达式的数字,并将其转换为整数存储在相应的列表中。

对于输入字符串"abc 123 def -456 ghi 789",上述代码将输出:

代码语言:txt
复制
Positive Integers: [123, 789]
Negative Integers: [-456]

这样,我们就成功地从输入字符串中提取出了正整数和负整数。

请注意,以上代码仅为示例,实际应用中可能需要根据具体需求进行适当的修改和优化。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券