c#float取小数点后两位_float取2位小数,末位四舍五入(转自fjj)

JAVA如何把一个float四舍五入到小数点后2位,以及多位

JAVA如何把一个float四舍五入到小数点后2位,4位,或者其它指定位数. 以前以为很容易,一直没在意,今天突然用到了,才发现,系统没有这样的函数.狂晕,同事们用的方法为,先转成String,再取其中几位,再转成float型,(如:String.valueOf(c).substring(0,String.valueOf(c).indexOf(".") + 3)):

我觉得这样不爽,于是找了书看看,书上还真没找到,晕晕.到网上找了一些方法,还真行.如下(以下都是取2位,如果要取其它位,自己修改一下):

(一):这种方法方便,我就使用这种方法

float a = 123.2334f;

float b = (float)(Math.round(a*100))/100;

(这里的100就是2位小数点,如果要其它位,如4位,这里两个100改成10000)

(二):这个方法也简单,不过还要再转成float型:

import java.text.DecimalFormat;

String a = new DecimalFormat("###,###,###.##").format(100.12345 );

(三):这个也可以用

float ft = 134.3435f;

int scale = 2;//设置位数

int roundingMode = 4;//表示四舍五入,可以选择其他舍值方式,例如去尾,等等.

BigDecimal bd = new BigDecimal((double)ft);

bd = bd.setScale(scale,roundingMode);

ft = bd.floatValue();

(四):个人想法,还没去做 就是先放大10的N次方,变成整数,再除以10的N次方变回float型 , 不知道这样可以不?

--------------------------------------------------------------------------------

暂时就这么多,以后如果还发现了新的,再发上来

(附)日期格式化

//获取当前系统日期和时间的方法

import java.text.SimpleDateFormat;

import java.util.Date;

public class TestDate

{

public static void main(String[] args) throws Exception {

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //格式为特有的,API文档中有

SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");//

Date d = new Date();

System.out.println(sdf.format(d)); }

}

分享到:

2010-09-05 15:34

浏览 1546

评论

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将字符串转换为PrivateKey,您需要使用Java Cryptography Architecture (JCA)提供的Java KeyFactory类和KeySpec接口,具体步骤如下: 1. 将字符串解码为字节数组。 2. 创建一个PKCS8EncodedKeySpec对象并传入字节数组。 3. 使用KeyFactory.getInstance("RSA")获得一个KeyFactory实例。 4. 使用KeyFactory.generatePrivate()方法生成一个PrivateKey对象。 示例代码如下: ``` String privateKeyStr = "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDXZQwODFm+Kx0T\ndkq5jQdMjyLdE5Vf4dYyO1pP6EiGvBkLhPpNt0pZ1r5J7/3oWZoD8dMxhJzN3h9\noNvZz4aXQa1aL+yT+5hjUj7QjZzWuYQ8dD0+4t8wS3nCgLJHk+Lj8qX7yK1L4vJ4\n7Qk7jS9lXQDvB3fXq1yDwKkEwQvN2BnZkwvzT8q5KzDzFJ9fQvGfDol9oeIj1O1v\n7qFX/zh2bLDOk8oGj8B2QlJXeH8oIaWJW9Df3wE+5CJtE5KhhJ2A3B3kRJpU0v8U\nGxT1t1QnXGw2iQZQwmZv4m3lJHJ4iY8kMn9t+R3iY1ZxZiVJdV/XB7S9pZ+2Q2U/\n/l5+KzSrAgMBAAECggEBAKzUjZB1j8wT8QXy5c8LhtqK+T4f2mJj5ZtVd3CZ1Sjy\nb0t46+6Y5JYosBz7sUxXbU7DQ0dH2e0M0DkQYLAxX6V5y2ua7OaL6+gFw3P6xJ3m\nxP3Iv4/8hQy7lKXvz+2iL4FmMvVtJcKwK6h8nCZi/yiZP4pC+ZGXu1qfHEKbhpZL\nW2EGO1bD+9mJ9cU7J5UcE1wGaUJ8BY0Lj0bN5Hx2lOYrMk7f9lYvR5b0h1TcE6K2\nH4dNl9l1cH2t6hC5z2Tl8CfTjF9Qv+Gy2pU4MnQ4dQs8zXtqJl5ra5y7rFJ9Z4Xz\nH1p0/hmx4nSDDYOnC9PcJCbUVaS2z8Rj1IamGcB9wHECgYEA5NvzZG3V5lA5Vv3/\nNqUN+uWQ0bK0z8vW8PvSRhXN+o3vY7S4GQUpF2r0Z6rRJQJ4wE6vH84i4+7R5zXS\niXv2n8wW3jy8w2sGw6jJgG5mX7VgJqY8gq4Tm3GDJz7hZrXbCjJTSU3d5U4Y5Ovp\nyPX6eZpImW6pXpHJpjvC1NkCgYEAy7oQfMbU5iCf4qIzYjZ2mR3taUf/0f0QK7hF\n3+L/oLTosYl8yqLJSb+8GysamJNcS8uBpO+Z9dXb3L9bVf2yVBNK5qP6MlJYhZrT\n1yB9Z5kzjy3DkW9hHfz5j+L/+l2RMpE+QZvEbw0q7g+2wmnbRf5+sC2VZKJL+3Q5\nnw+/eAECgYB8m4DMwecpuvB1tcaDqy+XxGkXkZVJc7cKvEYJ9L9t1W0iCgLNr0jP\nfxzC5qYr5zqI5y9BQz9gS5fKs8gE5lfkmYNWpVQ1Aa0m8WmuYVZj+IAi0Ls7G8uH\nkCj1V0Lr1g5cXKdDjI+oG2eZz3Q2X4Z4KZc4ZJv4l6m5qz7OcJvKgQKBgQCT/H1r\nv3Y9ZRt2y3s7t8K/4tJX8uFyk53Vf91aYQ/5rGvMl8jgJtLmV8X2T+4L3QkqQf6w\nivpH1tL9X0zKo2fN9c6pP3E1pDqNvDb1nqM2FQzX2D2IY+q+7t5h5wUO+PZvVnKx\n5Xl0FezN9Etl4VZe8y1fJj8LJlxZt/zV9dAtqwKBgQCbZqC9P6wkhmXrD1yM+eV\nsRs4tBj9KXtNQZrX8avdMkgyJT5hKk2qN9DZTX1tQ6Z79/gjF9VgUgI5+7rKZy3Z\n9lUM8qjwQK1fjwBn5ch4gVxO7j8MkQ+MzU8a+X4Uw3L++hBb1PmEksz2/5F7Ls8W\nYvZfj75Q9JXo7QoDmyB1nA=="; byte[] privateKeyBytes = Base64.getDecoder().decode(privateKeyStr); PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(privateKeyBytes); KeyFactory keyFactory = KeyFactory.getInstance("RSA"); PrivateKey privateKey = keyFactory.generatePrivate(keySpec); ``` 请注意,这里的示例代码是将字符串解析为RSA私钥。如果您要解析其他类型的密钥,请相应地更改算法名称。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值