Open In App

ZoneId getAvailableZoneIds() method in Java with Examples

Last Updated : 19 Aug, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

The getAvailableZoneIds() method of the ZoneId class used to get the set of available zone IDs.This set includes all available region-based IDs.The ID can be passed to of(String) to create a ZoneId.The set of zone IDs can increase over time, although in a typical application the set of IDs is fixed.

Syntax:

public static Set getAvailableZoneIds()

Parameters: This method does not accepts any parameter.

Return value: This method returns Set which are a modifiable copy of the set of zone IDs.

Below programs illustrate the getAvailableZoneIds() method:
Program 1:




// Java program to demonstrate
// ZoneId.getAvailableZoneIds() method
  
import java.time.*;
import java.util.Set;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // get available zones using zoneIds()
        Set<String> zoneIds = ZoneId.getAvailableZoneIds();
  
        // print first record
        System.out.println("First ZoneId in list:" + zoneIds.iterator().next());
    }
}


Output:

First ZoneId in list:Asia/Aden

Program 2:




// Java program to demonstrate
// ZoneId.getAvailableZoneIds() method
  
import java.time.*;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // get available zones using zoneIds()
        Set<String> allZones = ZoneId.getAvailableZoneIds();
  
        // create ArrayList from Set
        List<String> zoneList = new ArrayList<String>(allZones);
        Collections.sort(zoneList);
  
        // printing first 5 zoneid with offset
        LocalDateTime dt = LocalDateTime.now();
        for (int i = 0; i < 5; i++) {
  
            // get zoneid then ZonedDateTime and offset
            // from that ZoneId
            String s = zoneList.get(i);
            ZoneId zoneid = ZoneId.of(s);
            ZonedDateTime zoneddate = dt.atZone(zoneid);
            ZoneOffset offset = zoneddate.getOffset();
            System.out.println("ZoneId = " + zoneid + " offset = " + offset);
        }
    }
}


Output:

ZoneId = Africa/Abidjan offset = Z
ZoneId = Africa/Accra offset = Z
ZoneId = Africa/Addis_Ababa offset = +03:00
ZoneId = Africa/Algiers offset = +01:00
ZoneId = Africa/Asmara offset = +03:00

References:
https://docs.oracle.com/javase/10/docs/api/java/time/ZoneId.html#getAvailableZoneIds(java.lang.Object)



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads