#java #int #concatenation
#java #int #объединение
Вопрос:
У меня есть два целых значения, как показано ниже
int fb = (int) (duration.toMinutes() / 60.0);
int fb1 = (int) (duration.toMinutes() % 60.0);
Я хочу переменную с плавающей точкой, как показано ниже
float fb2 = fb.fb1
Пример: Если у меня есть два значения int как fb = 3 и fb1 = 30, мне нужно значение с плавающей точкой fb2 = 3,30
Помогите мне, как достичь вышеуказанного в Java с минимальным количеством кода.
Комментарии:
1. В вашем примере
fb1
значение 1 или 10 дало бы одинаковое значение дляfb2
. Это намеренно?2. Минимальный код:
Float.parseFloat(fb "." fb1)
(предполагая, что это то, что вы хотите — см. комментарий выше)…3.
float fb2 = fb fb1 / 100f
;4. @saka1029 Это не будет работать для целых чисел, состоящих более чем из 2 цифр.
5. @DimaSan они сделали это, не упомянув важную оговорку о том, что это, вероятно, не то, чего хочет op. fb1 = 1 и fb1 = 10 дают одинаковый результат — вероятно, идея не в этом…
Ответ №1:
Попробуйте Float.parseFloat()
вот так:
float fb2 = Float.parseFloat(fb "." fb1);
Вы также могли бы использовать Float.valueOf()
в сочетании с String.valueOf()
, вот так:
float fb2 = java.lang.Float.valueOf(String.valueOf(fb) "."
String.valueOf(fb1));
Комментарии:
1. правила комментариев assylias!
2. Как получить точность в два десятичных знака в приведенной выше оценке
3. Оно имеет десятичную точность 2, смотрите здесь @user3669712
4. @ArnavBorborah Я думаю, комментарий касается того факта, что (fb = 1,fb1 = 10) -> fb2 = 1.1 и (fb = 1,fb1 = 1) -> fb2 = 1.1 дают тот же результат.
5. Да, оно имеет двойную точность, если оно имеет значения, отличные от нуля, но мне нужно представление всегда с двумя точностями, такими как 1.20, а не 1.2
Ответ №2:
float fb2 = Float.parseFloat(fb "." fb1);
Вот так просто 😉
Ответ №3:
float fb2 = Float.parseFloat(Integer.toString(fb) «.» Integer.toString(fb1));
Ответ №4:
Попробуйте приведенный ниже код:
int fb = (int) (duration.toMinutes() / 60.0);
int fb1 = (int) (duration.toMinutes() % 60.0);
float fb2 = java.lang.Float.valueOf(fb "." fb1);
Комментарии:
1. Кстати, вам не нужно делать это
String
в строке 4.
Ответ №5:
В классе-оболочке с плавающей точкой есть два метода 1) parseFloat 2) valueOf
Вы можете использовать любое из этого
float f=Float.parseFloat(fb "." fb1);
или
float f=Float.valueOf(fb "." fb1);