java如何从串中取出数字

java如何从串中取出数字,第1张

public class Test {

 public static void main(String[] args) {

 //String str="RMB3456789"

 String str ="¥12345";

 str =strreplaceAll("(<!\\d)\\D", "");

 Systemoutprintln(str); 

 }

}

replaceAll是替换的意思, (<!\\d)\\D里面 \\D表示非数字,(<!\\d)表示去除数字后面的情况(你可以为去除所有非数字内容,除了数字之间的那个 号)。

(<!\\d)\\D的意思就是: 数字前面的非数字部分。 把这些都替换成"",也就是替换成空

1:先看看字符串的第一个字符是不是在数字的范围之内;

2:在就把它赋值给一个字符变量,再把它强制转换,

3:再看字符串的下一个字符是不是在数字0-9的范围之内,在就和第二条相同,并且把上次的道德数字乘10再加上新得到的数字;如果不是就不管,退出。

4:第三条。

import javautilIterator;

import javautilSet;

import javautilTreeSet;

public class Cat {

public static void main(String[] args) {

String str="aadasf1213dsfa";

String str1="ada12ad3232adaf";

Set<Integer> set = getNumsFromStr(str);

Set<Integer> set1 = getNumsFromStr(str1);

Systemoutprint(str + "--->");

for (Iterator iter = setiterator(); iterhasNext();) {

Integer element = (Integer) iternext();

Systemoutprint(element + " ");

}

Systemoutprint("\n" + str1 + "--->");

for (Iterator iter = set1iterator(); iterhasNext();) {

Integer element = (Integer) iternext();

Systemoutprint(element + " ");

}

}

private static Set<Integer> getNumsFromStr(String str) {

String[] ary = strreplaceAll("[^\\d]", " ")split("\\s+");

Set<Integer> set = new TreeSet<Integer>();

for(String num: ary){

if(!numtrim()equals("")){

setadd(new Integer(numtrim()));

}

}

return set;

}

}

--------------------------

aadasf1213dsfa--->1213

ada12ad3232adaf--->12 3232

// 帮你弄了一个 你可以去试试

import javautilScanner;

public class JsAvg {

public static void main(String[] args) {

Systemoutprintln("请依次输入数字用空格分隔,输入0结束");

Scanner in = new Scanner(Systemin);

double n, sum = 0, count = 0;

while (true) {

n = innextDouble();

if (n == 00)

break;

sum += n;

count += 1;

}

Systemoutprintln("平均数为:" + sum / count);

}

}

以下是Java中的List ,如果是数组,大同小异

package com;

import javautilArrayList;

import javautilList;

public class Test {

public static void main(String[] args) {

//初始化数组

List<Integer> nums = new ArrayList<Integer>();

numsadd(2);

numsadd(5);

numsadd(10);

numsadd(6);

numsadd(3);

//设置最大值Max

int Max = Collectionsmax(nums);

Systemoutprintln("Max = " + Max);

}

}

以上就是关于java如何从串中取出数字全部的内容,包括:java如何从串中取出数字、JAVA如何从字符串中获得数字、java取字符串中的数字等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10216003.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存