有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如何在Java中计算字符串数组的值

import java.io.BufferedReader;
import java.io.InputStreamReader;
public class countnumbers {
    public static void main(String[] args) {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        try {
            System.out.println("input string:");
            String[] array = br.readLine().split("\\D+");
            String newtext = "";
            for(int i = 0; i < array.length; i ++){

                //int sum = 0;
                //for (int e : array) sum += e;
                //System.out.println(sum);
                // This part particulary works for Integer type arrays... i guess
            }

            System.out.println("result:");
            System.out.print(newtext);
        }       
        catch (Exception ex) {
            System.out.println("input-output error");
        }
    }
}

你好

我面临的问题是,我必须对数组中的数字进行计数和求和,数组中还包含文本和其他符号。有人能提供一些提示吗?上面给出了当前程序的示例


共 (2) 个答案

  1. # 1 楼答案

    您已经自己回答了部分问题(如何对数组的整数求和)。你真正的问题非常简单,只需三个词就能从谷歌得到答案。我会帮你:PARSE INTEGER STRING。如果你点击第一个结果,阅读第一个答案(最多2166张选票),你将节省stackowerflow的硬盘空间以及我写这个答案的时间

  2. # 2 楼答案

    使用以下实用方法

    public boolean isNumeric(String str){
        try{
            Double.parseDouble(str);
            return true;
        } catch (Exception e) {
            return false;
        }
    }
    

    在你的主代码中

    double sum = 0;
    for (int i = 0 ; i < array.length ; i++){
        if (isNumeric(array[i])) sum+= Double.parseDouble(array[i]);
    }
    

    我使用了double来确定,但是你可以用int来替换它,逻辑保持不变