இந்த டுடோரியலில், ஜாவா சரத்தை இரட்டை தரவு வகையாக மாற்றுவது எப்படி என்பதை அறிந்துகொள்வோம்:

சரத்தை இரட்டிப்பாக மாற்ற பின்வரும் முறைகளைப் பயன்படுத்த கற்றுக்கொள்வோம். ஜாவாவில் மதிப்பு:

  • Double.parseDouble(String)
  • Double.valueOf(String)
  • DecimalFormat parse()
  • புதிய இரட்டை(சரம் கள்)

ஜாவா சரத்தை இரட்டிப்பாக மாற்றும் முறைகள்

3>

எங்கள் ஜாவா நிரலில், பில் கணக்கிடுதல், வைப்புத் தொகையின் வட்டியைக் கணக்கிடுதல் போன்ற எண் மதிப்பில் சில வகையான எண்கணித செயல்பாடுகளைச் செய்ய வேண்டிய சில சூழ்நிலைகள் உள்ளன. ஆனால் இந்த திட்டத்திற்கான உள்ளீடு கிடைக்கிறது. உரை வடிவத்தில் அதாவது Java String தரவு வகை .

உதாரணத்திற்கு, மளிகைக் கட்டணங்களைக் கணக்கிடுவதற்கு - தயாரிப்பு விலை மற்றும் வாங்கிய யூனிட்களின் எண்ணிக்கை ஆகியவை உள்ளீட்டாக வருகின்றன. ஒரு வலைப்பக்கத்தின் உரைப் புலத்திலிருந்து அல்லது வலைப்பக்கத்தின் உரைப் பகுதியில் உள்ள உரை வடிவத்தில் அதாவது Java String தரவு வகை. இதுபோன்ற சூழ்நிலைகளில், Java primitive data type double ல் உள்ள எண்களை மீட்டெடுக்க இந்த String ஐ முதலில் மாற்ற வேண்டும்.

பல்வேறு முறைகளை ஒவ்வொன்றாக விரிவாகப் பார்ப்போம்.

#1) Double.parseDouble() Method

parseDouble() முறையானது இரட்டை வகுப்பால் வழங்கப்படுகிறது. ஒரு பொருளில் உள்ள பழமையான வகையின் இரட்டிப்பின் மதிப்பை மடிப்பதால் இரட்டை வகுப்பு ரேப்பர் கிளாஸ் என்று அழைக்கப்படுகிறது.

முறை கையொப்பத்தைப் பார்ப்போம்.கீழே:

பொது நிலையான இரட்டைப் பாகுபடுத்தல்(ஸ்ட்ரிங் str) NumberFormatException ஐ வீசுகிறது

இது வகுப்பு இரட்டையில் நிலையான முறையாகும், இது இரட்டை தரவு வகையால் குறிப்பிடப்படுகிறது குறிப்பிடப்பட்ட சரம்.

இங்கே, 'str' அளவுரு என்பது பாகுபடுத்தப்பட வேண்டிய இரட்டை மதிப்புப் பிரதிநிதித்துவத்தைக் கொண்ட சரம் மற்றும் வாதத்தால் குறிப்பிடப்படும் இரட்டை மதிப்பை வழங்குகிறது.

இது. சரம் பாகுபடுத்தக்கூடிய இரட்டிப்பைக் கொண்டிருக்காதபோது, ​​முறை விதிவிலக்கு NumberFormatException ஐ எறிகிறது.

உதாரணத்திற்கு, பெற்ற பிறகு விலையைக் கணக்கிட விரும்பும் போது ஒரு காட்சியைக் கருத்தில் கொள்வோம். உருப்படிகளின் அசல் விலையில் தள்ளுபடி.

இதற்காக, பொருளின் அசல் விலை மற்றும் தள்ளுபடி போன்ற உள்ளீட்டு மதிப்புகள் உங்கள் பில்லிங் அமைப்பிலிருந்து உரையாக வருகின்றன, மேலும் இந்த மதிப்புகளில் எண்கணித செயல்பாட்டைச் செய்ய விரும்புகிறோம். அசல் விலையிலிருந்து தள்ளுபடியைக் கழித்த பிறகு புதிய விலையைக் கணக்கிட.

பின்வரும் மாதிரிக் குறியீட்டில் சரத்தின் மதிப்பை இரட்டிப்பாக்க Double.parseDouble() முறையைப் பயன்படுத்துவது எப்படி என்று பார்க்கலாம்:

package com.softwaretestinghelp; /** * This class demonstrates sample code to convert string to double java program * using Double.parseDouble() method * * @author * */ public class StringToDoubleDemo1 { public static void main(String[] args) { // Assign "500.00" to String variable originalPriceStr String originalPriceStr = "50.00D"; // Assign "30" to String variable originalPriceStr String discountStr = "+30.0005d"; System.out.println("originalPriceStr :"+originalPriceStr); System.out.println("discountStr :"+discountStr); // Pass originalPriceStr i.e. String “50.00D” as a parameter to parseDouble() // to convert string 'originalPriceStr' value to double // and assign it to double variable originalPrice double originalPrice = Double.parseDouble(originalPriceStr); // Pass discountStr i.e. String “30.005d” as a parameter to parseDouble() // to convert string 'discountStr' value to double // and assign it to double variable discount double discount = Double.parseDouble(discountStr); System.out.println("Welcome, our original price is : $"+originalPrice+""); System.out.println("We are offering discount :"+discount+"%"); //Calculate new price after discount double newPrice = originalPrice - ((originalPrice*discount)/100); //Print new price after getting discount on the console System.out.println("Enjoy new attractive price after discount: $"+newPrice+""); } } 

இங்கே நிரல் வெளியீடு:

originalPriceStr :50.00D

discountStr :+30.0005d

வருக, எங்களின் அசல் விலை is : $50.0

நாங்கள் தள்ளுபடி வழங்குகிறோம் :30.0005%

தள்ளுபடிக்குப் பிறகு புதிய கவர்ச்சிகரமான விலையை அனுபவிக்கவும் : $34.99975

இங்கே, சரம் “50.00D” ஆகும், இதில் D என்பது சரத்தை குறிக்கிறது இரட்டை மதிப்பு.

String originalPriceStr = "50.00D";

இந்த அசல் விலை, அதாவது “50.00D”parseDouble() முறைக்கு ஒரு அளவுருவாக அனுப்பப்பட்டது மற்றும் மதிப்பு இரட்டை மாறி அசல் விலைக்கு ஒதுக்கப்பட்டது.

double originalPrice = Double.parseDouble(originalPriceStr);

parseDouble() முறை சர மதிப்பை இரட்டிப்பாக மாற்றுகிறது மற்றும் "+" அல்லது "-" மற்றும் 'D',' ஐ நீக்குகிறது d'.

எனவே, கன்சோலில் அசல் விலையை அச்சிடும்போது:

System.out.println("Welcome, our original price is : $"+originalPrice+"");

பின்வரும் வெளியீடு கன்சோலில் காட்டப்படும்:

வருக, எங்கள் அசல் விலை : $50.0

அதேபோல், String discountStr = “+30.0005d”; சரம் “+30.0005d” ஆனது parseDouble() முறையைப் பயன்படுத்தி இரட்டிப்பாக மாற்றலாம்:

double discount = Double.parseDouble(discountStr);

எனவே, கன்சோலில் தள்ளுபடியை அச்சிடும்போது.

System.out.println("We are offering discount :"+discount+"%");

பின்வரும் வெளியீடு காட்டப்படும் console:

We are offering discount :30.0005%

மேலும், நிரலில் இந்த எண் மதிப்புகளில் எண்கணித செயல்பாடுகள் செய்யப்படுகின்றன.

#2) Double.valueOf() Method

valueOf() முறை வழங்கப்படுகிறது. ரேப்பர் கிளாஸ் டபுள் மூலம்.

கீழே உள்ள முறை கையொப்பத்தைப் பார்ப்போம்:

பொது நிலையான இரட்டை மதிப்புஆஃப்(ஸ்ட்ரிங் ஸ்ட்ரிங்) எண்ஃபார்மேட்எக்ஸப்ஷன்

இந்த நிலையான முறையானது, குறிப்பிடப்பட்ட string str ஆல் குறிப்பிடப்படும் இரட்டை மதிப்பைக் கொண்ட தரவு வகையின் பொருளை இரட்டிப்பாக வழங்குகிறது.

இங்கே, 'str' அளவுரு என்பது இரட்டைப் பிரதிநிதித்துவத்தைக் கொண்ட ஒரு சரமாகும். பாகுபடுத்தப்பட்டு, தசமத்தில் வாதத்தால் குறிப்பிடப்படும் இரட்டை மதிப்பை வழங்கும்.

இந்த முறை விதிவிலக்கு NumberFormatException ஐ ஸ்டிரிங்கில் ஒரு எண் மதிப்பைக் கொண்டிருக்க முடியாது.பாகுபடுத்தப்பட்டது.

பின்வரும் மாதிரி நிரலின் உதவியுடன் இந்த Double.valueOf() முறையை எவ்வாறு பயன்படுத்துவது என்பதைப் புரிந்துகொள்ள முயற்சிப்போம்:

package com.softwaretestinghelp; /** * This class demonstrates sample code to convert string to double java program * using Double.valueOf() method * * @author * */ public class StringToDoubleDemo2 { public static void main(String[] args) { // Assign "1000.0000d" to String variable depositAmountStr String depositAmountStr = "1000.0000d"; // Assign "5.00D" to String variable interestRate String interestRateStr = "+5.00D"; // Assign "2" to String variable yearsStr String yearsStr = "2"; System.out.println("depositAmountStr :"+depositAmountStr); System.out.println("interestRateStr :"+interestRateStr); System.out.println("yearsStr :"+yearsStr); // Pass depositAmountStr i.e.String “1000.0000d” as a parameter to valueOf() // to convert string 'depositAmountStr' value to double // and assign it to double variable depositAmount Double depositAmount = Double.valueOf(depositAmountStr); // Pass interestRateStr i.e.String “5.00D” as a parameter to valueOf() // to convert string 'interestRateStr' value to double // and assign it to double variable discount Double interestRate = Double.valueOf(interestRateStr); // Pass yearsStr i.e.String “2” as a parameter to valueOf() // to convert string 'yearsStr' value to double // and assign it to double variable discount Double years = Double.valueOf(yearsStr); System.out.println("Welcome to ABC Bank. Thanks for depositing : $"+ depositAmount+" with our bank"); System.out.println("Our bank is offering attractive interest rate for 1 year :"+interestRate+"%"); //Calculate interest after 2 years on the deposit amount Double interestEarned = ((depositAmount*interestRate*years)/100); System.out.println("You will be receiving total interest after "+years+" is $"+interestEarned+""); } }

இங்கே உள்ளது நிரல் வெளியீடு:

depositAmountStr :1000.0000d

interestRateStr :+5.00D

yearsStr :2

ABC வங்கிக்கு வரவேற்கிறோம். டெபாசிட் செய்ததற்கு நன்றி : $1000.0 எங்கள் வங்கியில்

எங்கள் வங்கி 1 வருடத்திற்கு கவர்ச்சிகரமான வட்டி விகிதத்தை வழங்குகிறது :5.0%

2.0க்கு பிறகு மொத்த வட்டி $100.0 ஆகும்

இங்கே, சரம் மாறிகளுக்கு மதிப்புகளை ஒதுக்குகிறோம்:

String depositAmountStr = "1000.0000d"; String interestRateStr = "+5.00D"; String yearsStr = "2"; 

கீழே காட்டப்பட்டுள்ளபடி இந்த மதிப்புகளை இரட்டிப்பாக மாற்ற valueOf() முறையைப் பயன்படுத்தவும்.

Double depositAmount = Double.valueOf(depositAmountStr);

நாங்கள் பயன்படுத்துகிறோம் மேலும் எண்கணித கணக்கீட்டிற்கான அதே மதிப்புகள்:

Double interestEarned = ((depositAmount*interestRate*years)/100);

#3) டெசிமல் ஃபார்மேட் பார்ஸ் () முறை

இதற்காக, நாம் முதலில் NumberFormat வகுப்பு நிகழ்வை மீட்டெடுத்து, பாகுபடுத்தும்() முறையைப் பயன்படுத்துகிறோம் NumberFormat வகுப்பின்.

கீழே உள்ள முறை கையொப்பத்தைப் பார்ப்போம்:

public Number parse(String str) Throws ParseException

இந்த முறை குறிப்பிட்ட உரையை பாகுபடுத்துகிறது. இது தொடக்க நிலையில் இருந்து ஒரு சரத்தைப் பயன்படுத்துகிறது மற்றும் எண்ணை வழங்குகிறது.

இந்த முறை விதிவிலக்கு ParseException என்ற சரத்தின் ஆரம்பம் பாகுபடுத்தக்கூடியதாக இல்லை என்றால்.

கீழே உள்ள மாதிரி நிரலைப் பார்ப்போம். இந்த மாதிரிக் குறியீடு பார்ஸ்() முறையைப் பயன்படுத்தி இரட்டை மதிப்பு கொண்ட வடிவமைக்கப்பட்ட உரை சரத்தை பாகுபடுத்துகிறது:

package com.softwaretestinghelp; import java.text.DecimalFormat; import java.text.NumberFormat; import java.text.ParseException; /** * This class demonstrates sample code to convert string to double java program * using DecimalFormat parse () method * * @author * */ public class StringToDoubleDemo3 { public static void main(String [] args) throws ParseException { // Assign "5,000,00.00" to String variable pointsString String pointsString = "5,000,00.00"; System.out.println("pointsString :"+pointsString); // Pass pointsString i.e. String “+5,000,00.00” as a parameter to // DecimalFormat.getNumberInstance(). parse() method // to convert string pointsString value to double // and assign it to double variable points NumberFormat num = DecimalFormat.getNumberInstance(); Number pointsNum = num.parse(pointsString); double points = pointsNum.doubleValue(); System.out.println("Congratulations ! You have earned :"+points+" points!"); } } 

இங்கே நிரல் வெளியீடு:

புள்ளிகள்ஸ்ட்ரிங்:5,000,00.00

வாழ்த்துக்கள் ! நீங்கள் :500000.0 புள்ளிகளைப் பெற்றுள்ளீர்கள்!

இங்கே, வடிவமைக்கப்பட்ட உரையானது சரம் மாறிக்கு பின்வருமாறு ஒதுக்கப்பட்டுள்ளது:

String pointsString = "5,000,00.00";

இந்த வடிவமைத்த உரை “5,000,00.00” அனுப்பப்பட்டது. num.parse() முறைக்கு ஒரு வாதமாக கீழே காட்டப்பட்டுள்ளபடி doubleValue () முறையை செயல்படுத்துவதன் மூலம் மதிப்பு பெறப்படுகிறது.

double points = pointsNum.doubleValue();

#4) New Double() Constructor

Java String ஐ இரட்டிப்பாக மாற்றுவதற்கான மற்றொரு வழி இரட்டை வகுப்பு கட்டமைப்பாளரைப் பயன்படுத்துகிறது( சரம் str)

public Double(String str) NumberFormatExceptionஐ வீசுகிறது

இந்த கன்ஸ்ட்ரக்டர் ஒரு இரட்டைப் பொருளைக் கட்டமைத்து, குறிப்பிடப்பட்ட சரத்தால் குறிப்பிடப்படும் இரட்டை வகையின் மதிப்பைக் கொண்டுள்ளது.

str என்பது இரட்டைக்கு மாற்றுவதற்கான ஒரு சரம்

இந்த முறையானது NumberFormatException எனப்படும் விதிவிலக்கை வெளியிடுகிறது>

இந்த டபுள் (ஸ்ட்ரிங் str) கன்ஸ்ட்ரக்டரை எவ்வாறு பயன்படுத்துவது என்பதை பின்வரும் மாதிரி நிரலின் உதவியுடன் புரிந்து கொள்ள முயற்சிப்போம் இதோ நிரல் வெளியீடு:

radiusStr :+15.0005d

வட்டத்தின் ஆரம் :15.0005 cm

வட்டத்தின் பரப்பளவு :706.5471007850001 cm

மேலே உள்ள திட்டத்தில், வட்டத்தின் ஆரம் மதிப்பு ஒதுக்கப்பட்டுள்ளதுசரம் மாறி:

String radiusStr = "+15.0005d";

வட்டத்தின் பரப்பளவைக் கணக்கிட, ஆரம் இரட்டை() கன்ஸ்ட்ரக்டரைப் பயன்படுத்தி இரட்டை மதிப்பாக மாற்றப்படுகிறது, இது இரட்டை தரவு வகை மதிப்பை வழங்குகிறது. பின்னர் இரட்டை மதிப்பு() முறையானது, கீழே காட்டப்பட்டுள்ளபடி, பழமையான தேதி வகையின் இரட்டிப்பின் மதிப்பை மீட்டெடுக்க செயல்படுத்தப்படுகிறது.

double radius = new Double (radiusStr).doubleValue();

குறிப்பு: Double(String str) கன்ஸ்ட்ரக்டர் ஜாவா 9.0 முதல் நீக்கப்பட்டது. அதனால்தான் மேலே உள்ள அறிக்கையில் டபுள் ஸ்ட்ரைக்த்ரூ உள்ளது.

எனவே, இந்த வழி இப்போது குறைவாகவே விரும்பப்படுகிறது. எனவே, ஜாவா சரத்தை இரட்டை ஜாவா ப்ரிமிடிவ் தரவு வகையாக மாற்றுவதற்கான அனைத்து முறைகளையும் நாங்கள் உள்ளடக்கியுள்ளோம்.

சரத்திலிருந்து இரட்டை மாற்றும் முறை பற்றி அடிக்கடி கேட்கப்படும் சில கேள்விகளைப் பின்தொடர்ந்து பார்க்கலாம்.

அடிக்கடி கேட்கப்படும் கேள்விகள்

Q #1) ஜாவாவில் சரத்தை இரட்டிப்பாக மாற்ற முடியுமா?

பதில்: ஆம் , ஜாவாவில், பின்வரும் ஜாவா வகுப்பு முறைகளைப் பயன்படுத்தி சரத்திற்கு இரட்டை மாற்றத்தை செய்யலாம்:

  • Double.parseDouble(String)
  • Double.valueOf(String)
  • DecimalFormat parse()
  • new Double(String s)

Q #2) சரத்தை இரட்டையாக மாற்றுவது எப்படி?

பதில்: சரத்தை இரட்டிப்பாக மாற்ற ஜாவா பல்வேறு முறைகளை வழங்குகிறது.

கீழே கொடுக்கப்பட்டுள்ள ஜாவா வகுப்பு முறைகள்:

  • Double.parseDouble(String)
  • Double.valueOf(String)
  • DecimalFormat parse()
  • new Double(String s)

கே #3) ஜாவாவில் இரட்டிப்பா?

பதில்: ஆம் . ஹார்ட், இன்ட், டபுள் போன்ற எண் மதிப்புகளைச் சேமிக்க ஜாவா பல்வேறு பழமையான தரவு வகைகளை வழங்குகிறது. இரட்டை என்பது மிதக்கும் புள்ளி எண்ணைக் குறிக்கும் ஜாவா பழமையான தரவு வகையாகும். இந்த தரவு வகை 64-பிட் மிதக்கும் புள்ளி துல்லியம் கொண்ட சேமிப்பகத்திற்கு 8 பைட்டுகளை எடுக்கும். இந்த தரவு வகை தசம மதிப்புகளைக் குறிக்கும் பொதுவான தேர்வாகும்.

கே #4) ஜாவாவில் ஸ்கேனர் என்றால் என்ன?

பதில்: பயனரிடமிருந்து உள்ளீட்டைப் பெற ஜாவா java.util.Scanner வகுப்பை வழங்குகிறது. வெவ்வேறு தரவு வகைகளில் உள்ளீட்டைப் பெற இது பல்வேறு முறைகளைக் கொண்டுள்ளது. உதாரணத்திற்கு, nextLine() ஆனது சரம் தரவு வகை மதிப்பைப் படிக்கப் பயன்படுகிறது. இரட்டை தரவு மதிப்பைப் படிக்க, இது nextDouble() முறையை வழங்குகிறது.

முடிவு

இந்தப் பயிற்சியில், பின்வரும் வகுப்பைப் பயன்படுத்தி ஜாவாவில் சரம் தரவு வகையை இரட்டைத் தரவு வகையாக மாற்றுவது எப்படி என்பதைப் பார்த்தோம். எளிய எடுத்துக்காட்டுகளுடன் கூடிய முறைகள் இரட்டை(சரம் கள்)

மேலுக்கு செல்