程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 淺析Java中print、printf、println的差別

淺析Java中print、printf、println的差別

編輯:關於JAVA

淺析Java中print、printf、println的差別。本站提示廣大學習愛好者:(淺析Java中print、printf、println的差別)文章只能為提供參考,不一定能成為您想要的結果。以下是淺析Java中print、printf、println的差別正文


printf重要是繼續了C說話的printf的一些特征,可以停止格局化輸入
print就是普通的尺度輸入,然則不換行
println和print根本沒甚麼差異,就是最初會換行
System.out.printf("the number is: d",t);

參照JAVA API的界說以下:
'd' 整數 成果被格局化為十進制整數
'o' 整數 成果被格局化為八進制整數
'x', 'X' 整數 成果被格局化為十六進制整數
'e', 'E' 浮點 成果被格局化為用盤算機迷信記數法表現的十進制數
'f' 浮點 成果被格局化為十進制數
'g', 'G' 浮點 依據精度和捨入運算後的值,應用盤算機迷信記數情勢或十進制格局對成果停止格局化。
'a', 'A' 浮點 成果被格局化為帶有用位數和指數的十六進制浮點數
println("test")相當於print("testn")就是普通的輸入字符串

printprintlnprintf的差別
print將它的參數顯示在敕令窗口,並將輸入光標定位在所顯示的最初一個字符以後。
println 將它的參數顯示在敕令窗口,並在開頭加上換行符,將輸入光標定位鄙人一行的開端。
printf是格局化輸入的情勢。

下在舉個例子:

package other;
public class TestPrint {
public static void main(String[] args) {
   int i = 4;
   double j = 5;

   System.out.print("用print輸入i:"+ i);
   System.out.println( "用println輸入i:"+ i);
   System.out.printf("i的值為%d,j的值為%f", i,j);

}
}

運轉成果為
用print輸入i:4用println輸入i:4
i的值為4,j的值為5.000000

可以看到,用print輸入i後,沒有換行,用println輸入的成果直接在print輸入語句前面,而輸入println後換行了,所以用printf輸入時,在第二行
輸入。

我們再來看printf
“i的值為%d,j的值為%f”這個字符串中的"%d"變成i的值了,而"%f"變成了j的值了!
這裡,"%d"的意思是一個int值的占位符,"%f"為一個double 或float值的點位符,這個變量的參數在前面供給。留意的是實參名必需按次序排。否則就會錯了。並且類型也要符合。假如我們把語句改成System.out.printf("i的值為%d,j的值為%f", j,i);//i和j地位反了
這時候就有錯了由於"%d"對應的參數變成j,"%f"對應的變成i了,而j是double的,與"%d"是int形的紛歧致。所以有錯了。
還有"%s"是一個字符串值的點位符的意思。"%c"是一個字符值的點位符的意思。
能夠讀者還會問為何j輸入釀成了5.000000?那是由於double是默許有6位小數的(這個能夠和體系電腦有關,有的不是6位吧)然則假如你想只需輸入兩位小數行不可?可以啊!只需改下語句就好了!
System.out.printf("i的值為%d,j的值為%.2f", i,j);
這裡的"%.2f"的意思是輸入兩位小數點。假如想輸入三位那就"%.3f"。
說到這裡你會發明本來printf也很有效的。如許可以掌握輸入的格局。
再學多點常識吧,將代碼改成以下:

public class TestPrint {
public static void main(String[] args) {
   int i = 4;
   double j = 5.000f;
   System.out.printf("i的值為],n", i);
   System.out.printf("i的值為=,j的值為%.2f", i,j);
}
}

運轉成果為:
i的值為    4,
i的值為 4,j的值為5.00

本來在"%"與"d"之間加個數5的意思是輸入5個占位符。默許向右對齊。如許的輸入是很有效的,好比你想輸入一個表格,因各個數年夜小紛歧,有的5位有的4位,如許輸入的的表格成果就對不齊了。假如將輸入成果全體為統一樣的占位符數。那樣就對齊了。呵呵。
除"%d"可以如許外,其余也能夠,讀者不防嘗嘗。會有許多收成的。

我們再試著將代碼改一下:

public class TestPrint {
public static void main(String[] args) {
   int i = 4;
   double j = 5.000f;
   System.out.printf("i的值為d,n", i);
}
}

運轉成果為:
i的值為00004,
哈哈,本來"d"的意思是輸入5個占位符,假如數字缺乏5的話就有右邊以0相補

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved