我有以下程序(取自SO链接What is the best way to conversion Dollars (Big Decimal) in Cents (Integer) in java?),它将美元转换为美分。然而,输出并不符合我的预期。
电流输出:
12345
8
Run Code Online (Sandbox Code Playgroud)
预期输出:
12345
9
Run Code Online (Sandbox Code Playgroud)
主程序.java
public class Main {
private static final BigDecimal x100 = new BigDecimal(100);
static List<BigDecimal> nums = new ArrayList<>();
static BigDecimal a = new BigDecimal(123.45);
static BigDecimal b = new BigDecimal(0.09);
public static void main(String[] args) {
nums.add(a);
nums.add(b);
for (BigDecimal usd : nums) {
BigDecimal rounded = usd.setScale(2, BigDecimal.ROUND_DOWN);
BigDecimal bigDecimalInCents = rounded.multiply(x100);
int cents = …Run Code Online (Sandbox Code Playgroud) 我正在 appcelerator 中使用货币符号在 Android 和 iOS 中构建应用程序。我想让许多参数动态化,因此将此值(u20b9)作为 api 传递给应用程序。由于某些原因无法像这样传递 value(\u20b9) ,所以不带斜线传递。
当我使用以下代码时,它可以正常工作:-
var unicode = '\u20b9';
alert(unicode);
Run Code Online (Sandbox Code Playgroud)
输出:- ?
当我使用以下代码时:-
var unicode = '\\'+'u20b9';
alert(unicode);
Run Code Online (Sandbox Code Playgroud)
输出:- \u20b9
因此,而不是 ? 它会在任何地方打印 \u20b9,这是我不想要的。
提前致谢。
我正在做
tvCartTotalAmount.setText("tk "+String.format("%.2f",totalAmount)+"/-");
Run Code Online (Sandbox Code Playgroud)
输出是
传统知识 315/-
我想表现得像
? 315/-
我怎样才能做到这一点?
我找不到给定数字和货币将它们打印到给定文化的字符串的选项。我发现的最接近的东西是decimal.ToString("C", GIVEN_CULTURE),但这不会要求货币,并且会假设我正在谈论文化所了解的货币。如果我在欧洲使用美元怎么办?
例如,Javascript 在构建字符串时将请求这两个参数:
GIVEN_STRING.toLocaleString(culture, { style: 'currency', currency: currency })
Run Code Online (Sandbox Code Playgroud)
这是相关的,因为我正在开发的软件可以处理美元和 MXN(墨西哥比索)。我们的网络仪表板显示有关文化的不同符号(Chrome 示例,我认为它在跨浏览器上有所不同):
zh:
es-MX:
我的 sql 数据库中有数据,我645.000需要将其格式化以包含货币符号,例如,$645.000
如何在 SQL 中实现这一点?
我正在创建一个用于货币兑换的应用程序.将美元兑换成外币.我创建了一个应用程序,但问题是我必须手动更新货币的汇率.无论如何,他们的应用程序可以让费率自动更新.这是我的应用程序的Java代码.查看我的函数中的ConvertUSDtoEuro()和ConvertEurotoUSD().我希望一切都很清楚.
package com.example.currencyconverter;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioButton;
public class MainActivity extends Activity
{
private EditText text;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
text = (EditText) findViewById(R.id.editText1);
}
public double ConvertUSDtoEuro(float USD)
{ return ((USD * .667)); }
public double ConvertEurotoUSD(float Euro)
{ return ((Euro * 1.11)); }
public void onClick (View view)
{
switch (view.getId())
{
case R.id.button1:
RadioButton USDButton = (RadioButton) findViewById(R.id.radio0);
RadioButton EuroButton = (RadioButton) findViewById(R.id.radio1);
float inputvalue = Float.parseFloat(text.getText().toString()); …Run Code Online (Sandbox Code Playgroud) 在服务器上我接受String作为参数.这个字符串代表钱.
它可能是(例如)
0
12
12,
12,34
,12
Run Code Online (Sandbox Code Playgroud)
现在我这样削减它:
long centAmount = (long) (NumberFormat.getInstance(Locale.FRANCE).parse(outSum).doubleValue() * 100)
Run Code Online (Sandbox Code Playgroud)
我担心我会在某处丢失一分钱.
请告知如何重写我的代码.
var string = 'Our Prices are $355.00 and $550, down form $999.00';
Run Code Online (Sandbox Code Playgroud)
如何将这 3 个价格放入数组中?
我有一个字符串"eur0.99",它可以是"eur123.0"或"som0.10",或"0.99usd",或"123.34any"或类似的东西.如何在价格和字母之间插入一个空格而不会产生一个巨大的令人讨厌的杂乱代码?
我正在尝试创建一个满足以下条件的正则表达式:
我做了以下但它没有按预期工作
^[0\.|1-9\d*\.]\d{2,2}$/
Run Code Online (Sandbox Code Playgroud)
使用https://regexr.com/进行测试
在Java中,将Double值的Dollar转换为cents的美分的最佳方法是什么。目前,我使用以下方法:
Double cents = new Double(dollar*100);
int amount = cents.intValue();
Run Code Online (Sandbox Code Playgroud)
这种方法有多精确?有没有更好的方法可以做到这一点。
我正在使用codeigniter,我需要将2.50变为250或300.70变为30070,基本上,我需要发送PAYPAL我的价格便士而不是英镑,我该怎么改变它所以我的价格用便士而不是磅?
currency ×12
java ×5
javascript ×3
regex ×3
unicode ×2
android ×1
appcelerator ×1
bigdecimal ×1
c# ×1
codeigniter ×1
culture ×1
cultureinfo ×1
double ×1
formatting ×1
paypal ×1
php ×1
sql ×1
sql-server ×1
string ×1
symbols ×1
titanium ×1