-4

例如,如果我有
0]+4

我如何阅读和吃零?

编辑:所以看起来我真的不清楚。让我编辑东西。我要做的就是获取出现在数字和字符字符串中的第一个整数。文本的第一个组成部分总是一个整数。我可以有这个的任何组合。例如,我可以拥有以下任何一种:
43SOMETEXT424 3blahblahblah64blahblahblah 5MoreText

阅读本文后,我将分别返回 43、3 和 5。

4

6 回答 6

0

你可以使用模式

  Pattern pattern;
   pattern = Pattern.compile("\\d");
   String st=jTextField1.getText();
   Matcher matcher = pattern.matcher(st);
system.out.prinl(matcher.group());
于 2013-01-26T05:44:51.240 回答
0

在不知道您正在做的事情的上下文的情况下,这有点长镜头......但是这段代码可以工作:

Integer.parseInt("0]+4".charAt(0));

如果您真的只想要“0”,只需将您拥有的值读入字符串并调用字符串Integer.parseInt()的第一个字符。

于 2013-01-26T04:45:31.480 回答
0

尝试

    int n = NumberFormat.getInstance().parse("0]+4").intValue();

奇怪,因为看起来不会有 ParseException,这就是 NumberFormat / DecimalFormat 的工作原理

于 2013-01-26T04:47:20.730 回答
0
public static void main(String[] args) {
    String s = "0]+4";
    for (int i = 0; i < s.length(); i++) {
        char c = s.charAt(i);
        if (Character.isDigit(c)) {

            System.out.println(c);
        }
    }
}

尝试这个。我想这就是你想要的……是吗?

于 2013-01-26T05:06:53.157 回答
0
public char getNumber(final String str){
    final String onlyNumbers = str.replaceAll("[^0-9]", "");
    return (char) (onlyNumbers.length() > 0 ? onlyNumbers.charAt(0) - '0' : -1);
}

考虑使用正则表达式。这不会解析负数,但我怀疑你需要在这里找到它们。

于 2013-01-26T05:13:35.610 回答
0
public static void main(String[] args){
    Scanner in=new Scanner(System.in)
    int number=in.nextInt();
}

//put loop for nextInt fun as many time as you want to get the required number
于 2016-03-28T13:15:48.877 回答