Search code examples
javastringeclipselogicalphanumeric

AplhaNumeric String sum calculation in java


INPUT=Sd98TR2asd100

OUTPUT=98+2+100=200

Can any one show me any codes or logic how to solve this in java without using in build functions


Solution

  • public static void main(String[] args) {
        String input = "Sd98TR2asd100";
        char[] chars = input.toCharArray();
    
        ArrayList<String> numbersAsString = new ArrayList<>();
        String toAdd = "";
        for(int i=0;i<chars.length;i++){
            if(chars[i]>='0' && chars[i]<='9'){
                toAdd += chars[i];
            }
            else{
                if(!toAdd.equals("")){
                    numbersAsString.add(toAdd);
                    toAdd = new String();
                }
            }
        }
        if(!toAdd.equals("")){
            numbersAsString.add(toAdd);
            toAdd = new String();
        }
        int sum = 0;
        String output = "";
        for(String string : numbersAsString){
            int num = Integer.parseInt(string);
            output += num +"+";
            sum +=num;
        }
        output = output.substring(0,output.length()-2);
        output += "="+ sum;
        System.out.println(output);
    }