జావా ప్రోగ్రామింగ్లో, సెకన్లు లేదా నానోసెకన్లలో సమయాన్ని కొలవాల్సిన అవసరం వచ్చిన కొన్ని సందర్భాలు ఉండవచ్చు. ఉదాహరణకు, వివిధ సమయ ఫ్రేమ్ల మధ్య సమయ వ్యత్యాసాన్ని పోల్చడం మరియు గణించడం లేదా కంప్యూటెడ్ నిమిషాలు, సెకన్లు లేదా నానోసెకన్లను తిరిగి ఇవ్వడం. అటువంటి సందర్భాలలో, ' వ్యవధి తరగతి ” జావాలో సమయ-సంబంధిత కార్యాచరణలతో సమర్థవంతంగా పని చేయడంలో సహాయకరంగా ఉంటుంది.
ఈ బ్లాగ్ జావాలో “డ్యూరేషన్ క్లాస్”ని వర్తింపజేయడం గురించి వివరిస్తుంది.
జావా వ్యవధి క్లాస్ అంటే ఏమిటి?
' వ్యవధి ” అనేది జావా టైమ్ లైబ్రరీలో ఉన్న విలువ-ఆధారిత తరగతిని సెకన్లు మరియు నానోసెకన్లలో సమయాన్ని కొలవడానికి ఉపయోగిస్తారు. అలాగే, ఈ తరగతి మార్పులేనిది మరియు థ్రెడ్-సురక్షితమైనది.
వ్యవధి తరగతి యొక్క పద్ధతులు
వ్యవధి తరగతికి సంబంధించిన కొన్ని ముఖ్యమైన పద్ధతులు క్రిందివి:
పద్ధతులు | వాడుక |
addTo(తాత్కాలిక తాత్కాలిక) | నిర్దిష్ట తాత్కాలిక వస్తువుకు ఈ వ్యవధిని జోడించడానికి ఇది ఉపయోగించబడుతుంది. |
పొందు (తాత్కాలిక యూనిట్) | అభ్యర్థించిన యూనిట్ విలువను పొందడానికి ఇది ఉపయోగించబడుతుంది. |
abs() | ఇది పొడవు యొక్క సానుకూల కాపీని ఇస్తుంది. |
మధ్య వ్యవధి (తాత్కాలిక ప్రారంభం కలుపుకొని, తాత్కాలిక ముగింపు) | ఈ పద్ధతి రెండు వస్తువుల (తాత్కాలిక) మధ్య వ్యవధిని కనుగొంటుంది. |
ప్లస్ (వ్యవధి వ్యవధి) | అందించిన అదనపు వ్యవధితో ఈ వ్యవధి యొక్క కాపీని అందించడానికి ఇది వర్తించబడుతుంది. |
మైనస్ (వ్యవధి వ్యవధి) | అందించిన వ్యవకలనంతో పాటు ఈ వ్యవధి కాపీని అందించడానికి ఈ పద్ధతి ఉపయోగించబడుతుంది. |
getNano() | ఇది ఈ వ్యవధిలో సెకండ్లో నానోసెకన్లను పొందుతుంది. |
getSeconds() | ఇది ఈ వ్యవధిలో సెకన్లను పొందుతుంది. |
(దీర్ఘ మొత్తం, తాత్కాలిక యూనిట్) | ఈ పద్ధతి అందించిన యూనిట్లోని మొత్తానికి అనుగుణంగా వ్యవధిని పొందుతుంది. |
సెకన్లు (దీర్ఘ సెకను) | ఇది సెకన్ల సంఖ్యను సూచించే వ్యవధిని పొందుతుంది. |
నానోస్ (దీర్ఘంగా) | ఇది నానోసెకన్ల సంఖ్యకు అనుగుణంగా వ్యవధిని పొందుతుంది. |
నిమిషాల (దీర్ఘ నిమి) | ఇది నిమిషాల సంఖ్యను సూచించే వ్యవధిని పొందుతుంది. |
మిల్లిస్ (పొడవైన మిల్లీస్) | ఈ పద్ధతి మిల్లీసెకన్లను సూచించే వ్యవధిని పొందుతుంది. |
గంటలు (దీర్ఘ గంటలు) | ఇది ప్రామాణిక/డిఫాల్ట్ గంటలను సూచించే వ్యవధిని పొందుతుంది. |
రోజులు (దీర్ఘ రోజులు) | ఇది ప్రామాణిక/డిఫాల్ట్ 24-గంటల రోజుల సంఖ్యను సూచించే వ్యవధిని పొందుతుంది. |
సరిపోల్చండి(వ్యవధి x) | ఇది అందించిన వ్యవధిని అందించిన వ్యవధితో పోల్చింది. |
మధ్య వ్యవధి (తాత్కాలిక ప్రారంభంIncl, Temporal endExcl) | ఇది రెండు వస్తువుల (తాత్కాలిక) మధ్య వ్యవధికి సంబంధించిన వ్యవధిని పొందుతుంది. |
అన్వయించు (చార్సీక్వెన్స్ టెక్స్ట్) | ఈ పద్ధతి టెక్స్ట్ స్ట్రింగ్ నుండి వ్యవధిని పొందుతుంది. |
నుండి (తాత్కాలిక మొత్తం) | ఇది తాత్కాలిక మొత్తం ద్వారా వ్యవధి ఉదాహరణను పొందుతుంది. |
ఇప్పుడు, కొన్ని 'డ్యూరేషన్ క్లాస్' పద్ధతులను వర్తింపజేద్దాం.
ఉదాహరణలకు వెళ్లే ముందు, ''తో పని చేయడానికి దిగువ అందించిన ప్యాకేజీని దిగుమతి చేయండి. వ్యవధి 'తరగతి:
దిగుమతి java.time.Duration;
ఉదాహరణ 1: జావాలో డ్యూరేషన్ క్లాస్ “మధ్య()”, “గెట్()”, మరియు “isNegative()” పద్ధతులను వర్తింపజేయడం
ఈ ఉదాహరణ చర్చించబడిన పద్ధతులను వర్తింపజేస్తుంది మరియు సంబంధిత ఫలితాన్ని బూలియన్గా లేదా కంప్యూటెడ్ సెకన్ల రూపంలో అందిస్తుంది:
పబ్లిక్ క్లాస్ వ్యవధి {పబ్లిక్ స్టాటిక్ శూన్య ప్రధాన ( స్ట్రింగ్ [ ] ఆర్గ్స్ ) {
వ్యవధి సమయంDiff1 = Duration.between ( LocalTime.MAX, LocalTime.NOON ) ;
System.out.println ( timeDiff1.is నెగటివ్ ( ) ) ;
System.out.println ( timeDiff1.get ( ChronoUnit.SECONDS ) ) ;
వ్యవధి సమయంDiff2 = Duration.between ( LocalTime.NOON, LocalTime.MAX ) ;
System.out.println ( timeDiff2.is నెగటివ్ ( ) ) ;
System.out.println ( timeDiff2.get ( ChronoUnit.SECONDS ) ) ;
} }
పై కోడ్ లైన్లలో:
- అన్నింటిలో మొదటిది, వర్తించు ' మధ్య () పేర్కొన్న సమయాల మధ్య సమయ వ్యత్యాసాన్ని తిరిగి ఇవ్వడానికి తరగతి(వ్యవధి) పద్ధతి.
- గమనిక: ది ' గరిష్టంగా ”కి అనుగుణంగా ఉంటుంది” 23:59:59.99 ' ఇంకా ' స్థానిక సమయం.మధ్యాహ్నం ' సూచిస్తుంది ' 12:00 ”.
- ఆ తర్వాత, అనుబంధించండి ' ప్రతికూలమైనది() ” బూలియన్ ఫలితాన్ని అందించడం ద్వారా సమయ వ్యత్యాసం ప్రతికూలంగా ఉంటే విశ్లేషించడానికి కంప్యూటెడ్ తేడాతో కూడిన పద్ధతి.
- అలాగే, వర్తించు “ పొందండి() 'గణించిన వ్యత్యాసాన్ని తిరిగి పొందే పద్ధతి.
- ఇప్పుడు, వర్తించు ' మధ్య () ”పద్ధతి మళ్లీ సమయ ఫ్రేమ్లను మార్చుకోవడం మరియు విలువలను విశ్లేషించడం మరియు వాటి వ్యత్యాసాన్ని అందించడం కోసం చర్చించిన విధానాలను పునరావృతం చేయడం ద్వారా.
అవుట్పుట్
ఈ ఫలితంలో, సంబంధిత సమయ వ్యత్యాసాలు లెక్కించబడటం మరియు ప్రతికూల విలువలు తదనుగుణంగా మూల్యాంకనం చేయబడటం గమనించవచ్చు.
తదుపరి ఉదాహరణకి వెళ్లే ముందు, తేదీ మరియు సమయంతో పని చేయడానికి క్రింది అదనపు ప్యాకేజీని దిగుమతి చేసుకున్నారని నిర్ధారించుకోండి:
java.time.temporal.ChronoUnit దిగుమతి;
ఉదాహరణ 2: వ్యవధి తరగతిని వర్తింపజేయడం “from()”, “getDuration()”, మరియు “toMinutes()” పద్ధతులు
ఈ ఉదాహరణలో, గంటలలో వ్యవధిని పొందడానికి మరియు నిమిషాల్లో దాన్ని తిరిగి పొందడానికి చర్చించిన పద్ధతులను అమలు చేయవచ్చు:
పబ్లిక్ క్లాస్ వ్యవధి 2 {పబ్లిక్ స్టాటిక్ శూన్య ప్రధాన ( స్ట్రింగ్ [ ] ఆర్గ్స్ ) {
వ్యవధి dur = వ్యవధి. నుండి ( ChronoUnit.HOURS.getDuration ( ) ) ;
System.out.println ( 'నిమిషాల్లో వ్యవధి ->' +dur.toMinutes ( ) ) ;
} }
ఈ కోడ్ బ్లాక్లో, కలిపి “ని వర్తింపజేయండి నుండి () 'మరియు' getDuration() ”గంటల్లో వ్యవధిని పొందే పద్ధతులు. ఆ తర్వాత, అనుబంధించండి ' నిమిషాలకు() ” బదులుగా నిమిషాల వ్యవధిని తిరిగి ఇచ్చే పద్ధతి.
అవుట్పుట్
పై అవుట్పుట్లో, ఒక గంటలో సంబంధిత నిమిషాలు తగిన విధంగా తిరిగి పొందినట్లు చూడవచ్చు.
ముగింపు
' వ్యవధి ” అనేది జావా టైమ్ లైబ్రరీలోని విలువ-ఆధారిత తరగతిని సెకన్లు మరియు నానోసెకన్లలో సమయాన్ని కొలవడానికి ఉపయోగిస్తారు. అలాగే, ఇది ఇతర వ్యవధి-ఆధారిత యూనిట్లను ఉపయోగించి ప్రారంభించవచ్చు, అంటే, “నిమిషాలు” మరియు “గంటలు”. ఈ తరగతి సమయ ఫ్రేమ్ల మధ్య సమయ వ్యత్యాసాలను గణించడానికి లేదా నిర్దిష్ట ఆకృతిలో వ్యవధిని తిరిగి ఇవ్వడానికి ఉపయోగించవచ్చు, అనగా, ' నిమిషాలు ”. ఈ కథనం జావా “డ్యూరేషన్ క్లాస్” వినియోగాన్ని ప్రదర్శించింది.