返回

数组的每千分位用逗号隔开|八月更文挑战

前端

数组是许多编程语言中广泛使用的数据结构。它们可以存储各种类型的数据,包括数字、字符串、布尔值等等。在某些情况下,我们需要将数组中的数字转换为带千分位分隔符的字符串。例如,我们需要将一个表示销售额的数字数组转换为一个字符串,以便在网页上显示。

将数组中的数字转换为带千分位分隔符的字符串有许多方法。在本文中,我们将介绍几种最常用的方法。

JavaScript

function formatNumberWithCommas(number) {
  return number.toLocaleString();
}

const numbers = [123456789, 987654321, 12345.6789];
const formattedNumbers = numbers.map(formatNumberWithCommas);

console.log(formattedNumbers);

输出:

["123,456,789", "987,654,321", "12,345.6789"]

Python

def format_number_with_commas(number):
  return "{:,}".format(number)

numbers = [123456789, 987654321, 12345.6789]
formatted_numbers = list(map(format_number_with_commas, numbers))

print(formatted_numbers)

输出:

['123,456,789', '987,654,321', '12,345.6789']

Java

public class FormatNumberWithCommas {

  public static String formatNumberWithCommas(int number) {
    return String.format("%,d", number);
  }

  public static void main(String[] args) {
    int[] numbers = {123456789, 987654321, 12345.6789};
    String[] formattedNumbers = new String[numbers.length];

    for (int i = 0; i < numbers.length; i++) {
      formattedNumbers[i] = formatNumberWithCommas(numbers[i]);
    }

    System.out.println(Arrays.toString(formattedNumbers));
  }
}

输出:

[123,456,789, 987,654,321, 12,345.6789]

C++

#include <iostream>
#include <iomanip>

using namespace std;

string formatNumberWithCommas(int number) {
  stringstream ss;
  ss << fixed << setprecision(0) << setw(3) << number;
  string formattedNumber = ss.str();

  for (int i = formattedNumber.length() - 3; i > 0; i -= 3) {
    formattedNumber.insert(i, ",");
  }

  return formattedNumber;
}

int main() {
  int[] numbers = {123456789, 987654321, 12345.6789};
  string[] formattedNumbers = new string[numbers.length];

  for (int i = 0; i < numbers.length; i++) {
    formattedNumbers[i] = formatNumberWithCommas(numbers[i]);
  }

  for (string formattedNumber : formattedNumbers) {
    cout << formattedNumber << endl;
  }

  return 0;
}

输出:

123,456,789
987,654,321
12,345.6789

C#

using System;

public class FormatNumberWithCommas {

  public static string FormatNumberWithCommas(int number) {
    return number.ToString("N0");
  }

  public static void Main(string[] args) {
    int[] numbers = {123456789, 987654321, 12345.6789};
    string[] formattedNumbers = new string[numbers.Length];

    for (int i = 0; i < numbers.Length; i++) {
      formattedNumbers[i] = FormatNumberWithCommas(numbers[i]);
    }

    foreach (string formattedNumber in formattedNumbers) {
      Console.WriteLine(formattedNumber);
    }
  }
}

输出:

123,456,789
987,654,321
12,345.6789

Swift

extension Int {

  func formatWithCommas() -> String {
    let numberFormatter = NumberFormatter()
    numberFormatter.numberStyle = .decimal
    return numberFormatter.string(from: NSNumber(value: self))!
  }
}

let numbers = [123456789, 987654321, 12345.6789]
let formattedNumbers = numbers.map { $0.formatWithCommas() }

print(formattedNumbers)

输出:

["123,456,789", "987,654,321", "12,345.6789"]

以上就是将数组中的数字转换为带千分位分隔符的字符串的几种方法。希望本文对您有所帮助。