簡體   English   中英

如何將字符串中的前導零計算為長度?

[英]How to count leading zeros in a string as the length?

我必須制作這個計算器程序,將字符串中的元素數計算為數字,(必須使用字符串,因為必須處理 integer 溢出)。 我遇到的問題是它不計算第一個零,例如:1233 計數將是 4 0001233 計數仍然是 4,但我需要它來添加第一個 000,所以它是 7。知道如何在沒有變化很大?

package com.company;

import java.math.BigInteger;

import java.util.*;

public class Main {

    public static void main(String[] args) {

        Scanner scan = new Scanner(System.in);
        System.out.print("Enter your number here: ");

        BigInteger input = scan.nextBigInteger();
        String inputstr = input.toString();
        System.out.println("Number of elements: " + inputstr.length());
        System.out.println("Number of different numbers: " + inputstr.chars().distinct().count());
        int number = input.intValue();
        int even_count=0;
        int odd_count=0;

        while (number>0){
            int rem=number%10;

            if (rem%2==0){
                even_count++;
            }
            else{
                odd_count++;
            }
            number=number/10;
        }
        System.out.println("Even numbers: "+ even_count);
        System.out.println("Odd numbers: "+ odd_count);

            }
        }

您可以先嘗試將輸入讀取為字符串,然后從中創建一個新的 BigInteger,如下所示:

String inputstr = scan.next();
System.out.println("Number of elements: " + inputstr.length());
System.out.println("Number of different numbers: " + inputstr.chars().distinct().count());
BigInteger input = new BigInteger(inputstr);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM