<پیش> float r = 5.0f یا دو برابر r = 5.0 مقدار 5.0 عددی است که به صورت کسری اعشاری نمایش داده می شود (یک عدد صحیح و یک قسمت کسری دارد). در علم کامپیوتر به چنین اعدادی واقعی
می گویند عدد واقعی عددی است که دارای یک جزء صحیح و یک جزء کسری است. قسمت های عدد صحیح و کسری با یک نقطه از یکدیگر جدا می شوند، نه مانند ریاضیات با کاما.
حتی اگر قسمت کسری عدد صفر باشد، مانند متغیر \(r\) در مثال، مترجم همچنان یک متغیر واقعی در حافظه ایجاد خواهد کرد. نکته، همانطور که بود، یک سیگنال برای مترجم است که لازم است یک متغیر واقعی ایجاد کند. 

اعداد بسیار بزرگ و بسیار کوچک  با استفاده از "نقطه شناور" نوشته می شود (به اصطلاح قالب علمی).  
در قالب علمی، یک عدد به صورت mantissa (بخش قابل توجهی از عدد) ونمایش داده می شود. هنگام علامت گذاری، مانتیس و توان با حرف e از یکدیگر جدا می شوند (تا حدی نشان دهنده 10 است). 
برای مثال، می‌توانید مقدار بار یک الکترون ( \(1.60217662 \times 10^{-19}\) C) را در یک متغیر، به شکل زیر بنویسید <پیش> floatEl = 1.60217662e-19f //برای ترتیب مثبت، علامت + را می توان حذف کرد یا دوبلEl= 1.60217662e-19 تقریباً تمام اعداد واقعی را نمی توان با دقت کامل در حافظه رایانه ذخیره کرد، زیرا تعداد محدودی بیت برای ذخیره سازی آنها اختصاص داده شده است. بنابراین، هنگام محاسبه با اعداد واقعی، خطاهای مرتبط با عدم دقت نمایش انباشته می شوند. علاوه بر این، هر چه فضای کمتری اختصاص داده شود، این خطا بیشتر خواهد بود. برای کاهش خطا در جاوا، از نوع double استفاده می شود که یک عدد واقعی را با دقت مضاعف در حافظه ذخیره می کند (هشت بایت در حافظه اشغال می کند، در حالی که نوع \(float \)- 4 بایت)

ورود

می توانید چندین متغیر واقعی را از جریان ورودی وارد کنید و آنها را به روش استاندارد روی متغیرها بنویسید: <پیش> double x = in.nextDouble(); <پیش> float y = in.nextFloat(); عدد اول وارد متغیر \(x\) می شود، عدد دوم به \(y\)

خروجی

جاوا راه های مختلفی برای نمایش اعداد واقعی دارد.

1)  System.out.printf برای خروجی کنسول ساده
به طور پیش فرض، هنگام استفاده از printf، اعداد واقعی با دقت حداکثر 6 رقم اعشار چاپ می شوند. اما مواردی وجود دارد که باید با دقت متفاوتی خروجی داده شود. در این صورت باید مشخص کنید که بعد از نقطه اعشار چه تعداد آشنایی را به خود اختصاص دهید. <پیش> دو برابر a=0.5; System.out.printf("%f",a); // روی صفحه نمایش 0.500000 System.out.printf("%.2f",a); // روی صفحه 0.5 System.out.printf("%10.2f",a); // می توانید تعداد کل موقعیت های اختصاص داده شده برای خروجی عدد را تنظیم کنید System.out.printf("%.2e",a); // نمایش شماره در قالب علمی با دقت 2 رقمی 2) DecmialFormat برای گرفتن رشته از یک عدد با استفاده از یک الگوی داده شده
کلاس DecmialFormat به شما امکان می دهد خروجی صفرهای پیشرو و انتهایی، پیشوندها و پسوندها، هزاران جداکننده و ده هزار جداکننده را کنترل کنید، اما این کد را کمی پیچیده تر می کند. <پیش> دو برابر = 123.45; DecimalFormat df = new DecimalFormat("#.###"); رشته فرمت شده = df.format(a); System.out.println (فرمت شده); //123.45 <بدن>
ورودی الگو خروجی یادداشت
123.45 #.# 123.5 با گرد کردن تا یک رقم اعشار نمایش داده می شود
123.45 #.### 123.45 عدد کامل را بدون صفرهای ابتدایی نمایش می دهد
123.45 #.0 123.5 با گرد کردن تا یک رقم اعشار نمایش داده می شود
123.45 #.000 123.450 تا شخصیت سوم با یک صفر ناچیز در پایان نمایش داده می شود

هنگام کار با اعداد واقعی، می توانید از کلاس آشنای Math استفاده کنید که حاوی تعداد زیادی توابع داخلی است. 
هنگام حل مسائل، اغلب لازم است اعداد واقعی را به نزدیکترین مقادیر صحیح گرد کنید. دو تابع برای این وجود دارد.

به خاطر داشته باشید
1
با تبدیل نوع صریح ( float x=1.5f; int y = int (x) )  -  قسمت کسری یک عدد واقعی قطع می شود (y = 1) 
2 ریاضی.طبقه(x) -  بزرگترین عدد صحیح کمتر یا مساوی با \(x\) (گرد به پایین)
برمی گرداند 3ریاضی.ceil(x) -  کوچکترین عدد صحیح را بزرگتر یا مساوی با \(x\) (گرد به بالا)
برمیگرداند
در اینجا مفیدترین توابع موجود در ماژول cmath آمده است. <بدن>
تابع شرح
گرد
دور(x) یک عدد را به نزدیکترین عدد صحیح گرد می کند. اگر قسمت کسری عدد 0.5 باشد، عدد به نزدیکترین عدد صحیح گرد می شود. 
طبقه(x) یک عدد را به پایین گرد می کند ("طبقه")، بنابراین طبقه(1.5) == 1، طبقه(-1.5) ==  ; -2
ceil(x) یک عدد را به بالا گرد می کند ("سقف")، در حالی که ceil(1.5) == 2، ceil(-1.5) ==  ; -1
abs(x) مدول (مقدار مطلق).
ریشه‌ها، لگاریتم‌ها
sqrt(x) ریشه مربع. استفاده: y = sqrt(x)
pow(x، y) x را به توان y افزایش می دهد. \(x^y\)
log(x) لگاریتم طبیعی. 
exp(x) پایه لگاریتم های طبیعی e = 2.71828...
مثلثات
sin(x) سینوس زاویه مشخص شده بر حسب رادیان
cos(x) کسینوس زاویه مشخص شده بر حسب رادیان
tan(x) مماس یک زاویه مشخص شده بر حسب رادیان
asin(x) آرکسین، مقدار را بر حسب رادیان برمی گرداند
acos(x) کسینوس قوس، مقدار را بر حسب رادیان برمی‌گرداند
atan(x) Arctangent، مقدار را بر حسب رادیان برمی گرداند
atan2(y, x) زاویه قطبی (بر حسب رادیان) نقطه (x، y).

مثال استفاده:
افزایش 2 به یک قدرت، زیرا pow دو برابر را به عنوان پاسخ برمی گرداند، سپس تبدیل به int مورد نیاز است.
ایجاد شد
عمومی کلاس اصلی {
    عمومی ایستا باطل اصلی(String[] args) < spanstyle="color:#666666">{
       int a = 2;
       int b = (< span style="color:#b00040">int)ریاضی.pow(a,2);
    }
}