Java simli format


Java Sim String.fomatBaxılıb 48

Java simli format String.format () Java metodu, qəbul edilən dilə, formata və arqumentlərə əsaslanan formatlaşdırılmış bir simli dəyəri qaytarır. Yerli dili təyin etməsək, bu, Locale.getDefault () -dan standart dilini alır. Daha çox arqument qəbul edildikdə əlavə arqumentlər nəzərə alınmayacaq.

bu üsul C dilinin sprintf () metoduna və Java Print axınının printf () metoduna bənzəyir.

Java-da simli format () sintaksis

String format () metodunu aşağıdakı 2 şəkildə istifadə edə bilərik:

Yerli istifadə etmədən

ümumi statik simli format (simli format, obyekt… args)

Yerli istifadə

ümumi statik Simli format (Yerli dil, Simli format, Obyekt… arqlar)

yerli - format () metoduna tətbiq edilməsi lazım olan yerli

format - tələb olunan simli format

args - format sətri üçün arqumentlər. Sıfır və ya daha çox ola bilər.

Simli format () İstisnalar

The Java simli format () metodu 2 istisnanın altına atır:

NullPointerException - format boş olduqda

QanunsuzFormatExsus etmə və ya IllelagFormatConversionException - göstərilən format qanunazidd olduqda və ya uyğun gəlmədikdə

MissingFormatArgumentException - göstərilən format üçün arqument itkin olduqda.

Java String formatı növləri

Çevirmək üçün aşağıdakı simli format növlərindən istifadə edə bilərik Sim

Format növüMəlumat NövüBuraxılış
%aÜzən nöqtəÜzən nöqtə sayının onaltılıq dəyəri
%bHər hansı bir növüBoş deyilsə “Doğru”, sıfırsa “Yanlış”
%cObrazUnicode xarakteri
%dTamOndalık tam ədədi
%eÜzən nöqtəElmi qeydlərdə ondalık rəqəm
%fÜzən nöqtəOnluq ədədi
%gÜzən nöqtəDəqiqlik və dəyərə əsaslanan elmi qeydlərdə ondalık say
%hHər hansı bir növüHashCode () metodundan Hex String dəyəri
%nheç kimPlatformaya xas olan ayırıcı
%oTamSəkkiz ədəd
%sHər hansı bir növüSim
%tTarix / VaxtBu tarix / saat konversiyası üçün prefiksdir. Daha ətraflı məlumat üçün aşağıdakı cədvələ baxın
%xTamAltı simli

Java String format nümunələri

public class Democlass {

  public static void main(String[] args) {
    formatString();
    
  }
  
  public static void formatString()
  {
    System.out.println("Output of %a is " + String.format("%a", 1.5));
    System.out.println("Output of %b is " + String.format("%b", false));
    System.out.println("Output of %B is " + String.format("%B", true));
    System.out.println("Output of %c is " + String.format("%c", 'd'));
    System.out.println("Output of %d is " + String.format("%d", 101));
    System.out.println("Output of %e is " + String.format("%e", 5.6));
    System.out.println("Output of %f is " + String.format("%f", 5.6));
    System.out.println("Output of %g is " + String.format("%g", 5.6));
    System.out.println("Output of %h is " + String.format("%h", 10));
    System.out.println("Output of %n is " + String.format("%n"));
    System.out.println("Output of %o is " + String.format("%o", 8));
    System.out.println("Output of %s is " + String.format("%s", "Java"));
    System.out.println("Output of %x is " + String.format("%x", 10));
  }
}


Output:
Output of %a is 0x1.8p0
Output of %b is false
Output of %B is TRUE
Output of %c is d
Output of %d is 101
Output of %e is 5.600000e+00
Output of %f is 5.600000
Output of %g is 5.60000
Output of %h is a
Output of %n is 

Output of %o is 10
Output of %s is Java
Output of %x is a

Simli format Tarix Vaxt Növləri

Yuxarıdakı cədvəldə qeyd edildiyi kimi, Java String formatında tarix-vaxt dönüşümləri üçün %t istifadə edirik. Bir istifadə edərkən yuxarı halda %t ilə birlikdə xarakter, böyük hərflə çıxış əldə edirik. Eyni şəkildə istifadə etdiyimiz zaman aşağı halda %t ilə birlikdə xarakter, kiçik hərflə çıxış əldə edirik.

Format növüBuraxılış
% tAHəftə içi tam adı, Məsələn: Bazar
% taHəftə içi qısa adı, məsələn: Günəş
% tBAyın tam adı, Məsələn: yanvar
% tbAyın qısa adı, məs: Jan
% tCİki rəqəmlə formatlanmış il, məsələn: 2-dan 00-a qədər
% tcTarix və Saat “% ta% tb% td% tT% tZ% tY” formatında, Məsələn: Cümə 23 May 21:25:46 IST 2020
% tDTarix “MM / DD / YY” formatında, məsələn: 05/23/20 ”
% tdAyın günü 2 rəqəmli olaraq, məsələn: 01-dən 31-ə qədər
% teAyın günü 0-a çıxmadan, Məsələn: 1-dən 31-ə qədər
% tF“YYYY-MM-DD” tarixində format
% tH24 saat formatında günün saatı
% -ci% Tb ilə eyni
% tI12 saat formatında günün saatı
% tjİlin aparıcı 0. İldə olan gün. Məsələn: 001-dən 366-ya
% tkGünün saatı 24 saat formatında 0, məsələn: 0 ilə 23 arasında aparılmadan
% tlGünün saatı 12 saat formatında 0, məsələn: 0 ilə 12 arasında aparılmadan
% tM0 aparıcı ilə saat dəqiqəsi, məsələn: 00-dan 59-a
% tmAy aparıcı 0 ilə formatlaşdırılıb, məsələn: 01-dən 12-dək
% tN9 rəqəmlə formatlanmış və 0-a rəhbərlik edən vaxtın nanosaniyəsi, Məsələn: 000000000-dən 999999999-a qədər
% tpYerli vaxta əsasən xüsusi, məsələn: am və ya pm
% tQMillisekundlar
% tR24 saat formatında “HH: MM” şəklində vaxt
% tr12 saat formatında “HH: MM: SS AM / PM” şəklində vaxt
% tSDəqiqənin saniyələri 2 rəqəmlə formatlanıb, məsələn: 00-dan 59-a qədər
% tsseconds
% tT24 saat formatında “HH: MM: SS” şəklində vaxt
% tY4 rəqəm formatında "YYYY" olaraq il
% ty“YY” olaraq iki rəqəm formatında il
% tZSaat qurşağı qısaltması, Məsələn: IST, UTC
% tzSaat qurşağı GMT-dən ofset, Məsələn: +0530

Tarix-Saat ilə Java String format nümunəsi

Aşağıdakı nümunədə format () metodundan istifadə edərək tarixin və ya vaxtın istənilən hissəsini necə əldə edə biləcəyimizi görə bilərik.

import java.util.Calendar;

public class Democlass {

  public static void main(String[] args) {
    formatDateTimeString();
    
  }
  
  public static void formatDateTimeString()
  {
    System.out.println("Output of %tA is " + String.format("%tA", Calendar.getInstance()));
    System.out.println("Output of %ta is " + String.format("%ta", Calendar.getInstance()));
    System.out.println("Output of %tB is " + String.format("%tB", Calendar.getInstance()));
    System.out.println("Output of %tb is " + String.format("%tb", Calendar.getInstance()));
    System.out.println("Output of %tC is " + String.format("%tC", Calendar.getInstance()));
    System.out.println("Output of %tc is " + String.format("%tc", Calendar.getInstance()));
    System.out.println("Output of %tD is " + String.format("%tD", Calendar.getInstance()));
    System.out.println("Output of %td is " + String.format("%td", Calendar.getInstance()));
    System.out.println("Output of %te is " + String.format("%te", Calendar.getInstance()));
    System.out.println("Output of %tF is " + String.format("%tF", Calendar.getInstance()));
    System.out.println("Output of %tH is " + String.format("%tH", Calendar.getInstance()));
    System.out.println("Output of %th is " + String.format("%th", Calendar.getInstance()));
    System.out.println("Output of %tI is " + String.format("%tI", Calendar.getInstance()));
    System.out.println("Output of %tj is " + String.format("%tj", Calendar.getInstance()));
    System.out.println("Output of %tk is " + String.format("%tk", Calendar.getInstance()));
    System.out.println("Output of %tl is " + String.format("%tl", Calendar.getInstance()));
    System.out.println("Output of %tM is " + String.format("%tM", Calendar.getInstance()));
    System.out.println("Output of %tm is " + String.format("%tm", Calendar.getInstance()));
    System.out.println("Output of %tN is " + String.format("%tN", Calendar.getInstance()));
    System.out.println("Output of %tp is " + String.format("%tp", Calendar.getInstance()));
    System.out.println("Output of %tQ is " + String.format("%tQ", Calendar.getInstance()));
    System.out.println("Output of %tR is " + String.format("%tR", Calendar.getInstance()));
    System.out.println("Output of %tr is " + String.format("%tr", Calendar.getInstance()));
    System.out.println("Output of %tS is " + String.format("%tS", Calendar.getInstance()));
    System.out.println("Output of %ts is " + String.format("%ts", Calendar.getInstance()));
    System.out.println("Output of %tT is " + String.format("%tT", Calendar.getInstance()));
    System.out.println("Output of %tY is " + String.format("%tY", Calendar.getInstance()));
    System.out.println("Output of %ty is " + String.format("%ty", Calendar.getInstance()));
    System.out.println("Output of %tZ is " + String.format("%tZ", Calendar.getInstance()));
    System.out.println("Output of %tz is " + String.format("%tz", Calendar.getInstance()));
  }
}


Output:
Output of %tA is Sunday
Output of %ta is Sun
Output of %tB is May
Output of %tb is May
Output of %tC is 20
Output of %tc is Sun May 24 09:40:28 IST 2020
Output of %tD is 05/24/20
Output of %td is 24
Output of %te is 24
Output of %tF is 2020-05-24
Output of %tH is 09
Output of %th is May
Output of %tI is 09
Output of %tj is 145
Output of %tk is 9
Output of %tl is 9
Output of %tM is 40
Output of %tm is 05
Output of %tN is 650000000
Output of %tp is am
Output of %tQ is 1590293428650
Output of %tR is 09:40
Output of %tr is 09:40:28 AM
Output of %tS is 28
Output of %ts is 1590293428
Output of %tT is 09:40:28
Output of %tY is 2020
Output of %ty is 20
Output of %tZ is IST
Output of %tz is +0530

Arqument indeksi

Format üçün String format metodunda arqument indeksini “%” - “$” arasında qeyd etməklə təyin edə bilərik. İndeks həmişə 1-dən başlayır.

Aşağıdakı misalda, 1-ci bəyanat “Java” nı iki dəfə yazdırır, çünki arqument indeksini iki dəfə 2 olaraq keçiririk. 1-ci ifadə yalnız arqument göstəricisi 2-dən bəri keçdiyimiz ikinci sətri yazdırır.

Arqument indeksi olan Java String format nümunəsi

public class Democlass {

  public static void main(String[] args) {
    String str1 = "Java";
    String str2 = "Tutorial";
    System.out.println(String.format("%1$s %1$s %2$s" , str1,str2));
    System.out.println(String.format("%2$s", "Hello","world"));
  }
}


Output:
Java Java Tutorial
world

Hizalama və dolgu

Formatı () metodunu sola / sağa düzəltmək və simli 0s ilə doldurmaq üçün də istifadə edə bilərik.

Tam ədədlərin formatlanması

Lazımi bir ədədin genişliyini / uzunluğunu boşluq, sol hizalamaq və ya tam bir eni 0-lərlə dolduraraq tam bir eni təyin edərək sağa düzəltməklə təyin edə bilərik. Aşağıdakı nümunə bütün bu formatlaşdırma növlərini göstərir.

public class Democlass {

  public static void main(String[] args) {
    System.out.println(String.format("%d", 100)); //Integer
    System.out.println(String.format("[%5d]", 100)); //Right aligning-Prefixing 2 spaces to get length of integer as 5
    System.out.println(String.format("[%-5d]", 100)); //Left aligning integer of length 5 by suffixing 2 spaces
    System.out.println(String.format("[% d]", 100)); //space before an integer
    System.out.println(String.format("[%05d]", 100)); //Prefixing 2 0s to get length of integer as 5
    
  }
  
}
Output:
100
[  100]
[100  ]
[ 100]
[00100]

Format sətri

String format () metodundan istifadə edərək sola / sağa uyğunlaşmaya əsaslanan sətri formatlaya bilərik. Aşağıdakı nümunə düzəldici simləri təsvir edir

public class Democlass {

  public static void main(String[] args) {
    System.out.println(String.format("%s", "Java")); //String
    System.out.println(String.format("[%10s]", "Java")); //Right aligning - Prefixing 6 spaces to get string length as 10
    System.out.println(String.format("[%-10s]", "Java"));//Left aligning string of length 10 by suffixing 6 spaces
    System.out.println(String.format("[%.4s]", "Java language"));//Retrieve string based on maximum number of characters specified
  }
  
}
Output:
Java
[      Java]
[Java      ]
[Java]

Yerli xüsusi Formatlaşdırma

Java String format metodundan istifadə edərək müəyyən bir lokal əsas götürülmüş bir tam dəyər formatlaya bilərik. Yerli bazaya əsasən format () metodu ədədi dəyəri formatlaşdırır.

import java.util.Locale;
public class Democlass {

  public static void main(String[] args) {
    System.out.println(String.format(Locale.US,"%,d", 1000000));
    System.out.println(String.format(Locale.FRENCH, "%,d",1000000));
    System.out.println(String.format(Locale.GERMAN, "%,d",1000000));
  }
  
}
1,000,000
1?000?000
1.000.000

nəticə

Bu təlimat nümunələr ilə birlikdə String sinifində mövcud olan bütün formatlama metodlarını ətraflı şəkildə təqdim edir.

arayış

Şərh yaz

Translate »
1