மன்றங்கள்

மேக் பைனரி ஆபரேட்டர் '>' வகை 'டபுள்?' மற்றும் 'Int'

abcdefg12345

அசல் போஸ்டர்
ஜூலை 10, 2013
  • அக்டோபர் 21, 2017
ஒரு சரத்தில் உள்ள இரட்டை மதிப்பு 10 ஐ விட அதிகமாக உள்ளதா என்பதைச் சரிபார்க்க, if அறிக்கையைப் பெற முயற்சிக்கிறேன், ஆனால் 'பைனரி ஆபரேட்டர்'>' என்ற பிழையைப் பெற ஆர்வமாக உள்ளேன், 'இரட்டை?' வகையின் இயக்கங்களில் பயன்படுத்த முடியாது. மற்றும் 'Int' நான் என்ன தவறு செய்கிறேன் என்று யாருக்கும் தெரியும்.

ஸ்விஃப்ட் 4
குறியீடு: |_+_|
நான் ஒரு மாறி சரத்தைப் பயன்படுத்துகிறேன், ஏனெனில் இது ஒரு சரமாக இருக்க வேண்டும், எனவே நான் அதை பின்னர் வடிவமைக்க முடியும், நான் அதை வரையறுத்தேன்
குறியீடு: |_+_|

abcdefg12345

அசல் போஸ்டர்
ஜூலை 10, 2013


  • அக்டோபர் 21, 2017
மற்றொரு மாறியைச் சேர்ப்பதன் மூலம் அதை சரிசெய்தார்
குறியீடு: |_+_|
எதிர்வினைகள்:960 வடிவமைப்பு

0002378

இடைநிறுத்தப்பட்டது
மே 28, 2017
  • அக்டோபர் 23, 2017
ஸ்விஃப்ட், ஒரு மொழியாக, சில நேரங்களில் மிகவும் சிரிக்கக்கூடியது என்று நான் நினைக்கிறேன், esp. ஜாவா நிரலாக்கத்திலிருந்து வருகிறது. மேலும், அதற்கான சிறந்த உதாரணங்களில் ஒன்றைக் கொண்டு வந்தீர்கள்.

மேலும், விருப்பத்தேர்வுகள் அவற்றின் நன்மைகளைக் கொண்டிருக்கும்போது, ​​அவை குப்பைத்தொட்டியின் மேல் விளிம்புகளுக்கு எதிராக எனது கணினியை அடித்து நொறுக்க வேண்டும்.

எவ்வாறாயினும், ஸ்விஃப்ட் உண்மையில் கழுதையை எட்டி உதைப்பது மூடல் பிரிவில் உள்ளது ... ஓ ஆமாம் ! ஜாவாவில் அவையும் உள்ளன, இப்போது, ​​ஆனால் ...

மற்றும், நிச்சயமாக, ஸ்விஃப்ட் வகைகள் மற்றும் அந்த தொல்லைதரும் அரை காலன்களின் அறிவிப்புகளில் குறைவான கடுமையானது ... அருமை !

எதிர்வினைகள்:abcdefg12345

0002378

இடைநிறுத்தப்பட்டது
மே 28, 2017
  • அக்டோபர் 24, 2017
காத்திருக்கவும், இப்போது நான் உங்கள் குறியீட்டைத் திரும்பிப் பார்க்கும்போது, ​​உங்கள் இரட்டை(சரம்) மதிப்பு இரட்டிப்பாக மதிப்பிடப்படுவதைக் காண்கிறேன், இது ஒரு விருப்ப மதிப்பு.

உங்களுக்கு புதிய மாறி தேவையில்லை. நீங்கள் '!' உங்கள் இரட்டை (சரம்) க்கு, அது வேலை செய்யும்.

இந்த விஷயத்தில் ஸ்விஃப்ட் முட்டாள் என்று நான் தவறாக நினைக்கிறேன். ஆனால், இதுபோன்ற கம்பைலர் புகார்களின் பல நிகழ்வுகளை நான் சந்தித்திருக்கிறேன் (இரண்டு வெவ்வேறு எண் வகைகளை ஒப்பிட முடியவில்லை).

பசுமை

ஜூலை 15, 2015
ஃபோர்ட் வொர்த்
  • அக்டோபர் 24, 2017
உங்கள் MyValue ஐ இரட்டிப்பாக அல்லது எண்ணாக (அது போல் தெரிகிறது) சேமிப்பது ஒரு தூய்மையான, அதிக வேகமான தீர்வாக இருக்கும் என்று நினைக்கிறேன். வடிவமைப்பைக் கையாள, நீங்கள் ஒரு NumberFormatter ஐப் பயன்படுத்தலாம்.

அல்லது மதிப்பை அவிழ்க்க விருப்பப் பிணைப்பைப் பயன்படுத்தலாம். ஃபோர்ஸ் அன்ராப்பைப் பயன்படுத்துவதற்கு முன்பு இந்த முறைகளில் ஒன்றை முதலில் முயற்சிப்பேன்

gnasher729

இடைநிறுத்தப்பட்டது
நவம்பர் 25, 2005
  • அக்டோபர் 24, 2017
maculateConception கூறினார்: ஸ்விஃப்ட், ஒரு மொழியாக, சில நேரங்களில் மிகவும் சிரிக்கக்கூடியதாக இருக்கும் என்று நான் நினைக்கிறேன், esp. ஜாவா நிரலாக்கத்திலிருந்து வருகிறது. மேலும், அதற்கான சிறந்த உதாரணங்களில் ஒன்றைக் கொண்டு வந்தீர்கள்.
அது மிகவும் தெளிவற்றது. பிரச்சனை என்னவென்றால், ஸ்விஃப்ட்டின் அடிப்படை அம்சம், விருப்ப மதிப்புகள் பற்றி OP க்கு தெரியாது. சரத்தில் எண் இல்லை என்றால், கன்ஸ்ட்ரக்டர் டபுள்(ஸ்ட்ரிங்) தோல்வியடையும். அதனால்தான் டபுள் (சரம்) டபுள் வகையின் முடிவை உருவாக்காது மற்றும் உருவாக்க முடியாது, ஆனால் டபுள் வகையின் ஒன்றை உண்டா? , அது ஒரு விருப்பமான இரட்டை. மேலும் ஒரு விருப்பமான இரட்டையை Int உடன் ஒப்பிட முடியாது.

உங்கள் 'தீர்வு' உண்மையில் மிகவும் மோசமானது. தி ! அதாவது 'இந்த மாற்றம் வெற்றி பெறும் என்று நான் உறுதியாக நம்புகிறேன். அது இல்லை என்றால், பயன்பாட்டை செயலிழக்கச் செய்யவும். விடு d = இரட்டை ('1234x')! செயலிழக்கும். வேண்டுமென்றே. ஏனென்றால் நீங்கள் பூஜ்யத்தை சரிபார்க்கவில்லை, அது பூஜ்யமாக இருந்தது.

பிழையைச் சரிபார்ப்பதே சரியான வழி. உதாரணத்திற்கு

d = இரட்டிப்பு (MyValue), d > 10 {
// MyValue ஒரு எண்ணைக் கொண்டுள்ளது, மேலும் அந்த எண் > 10.
} வேறு {
// MyValue எண்ணைக் கொண்டிருக்கவில்லை, அல்லது அந்த எண்ணானது<= 10.
}

பாதுகாப்பான மற்றும் உண்மையில் வேலை செய்யும் குறியீட்டை எழுதுவது பயனுள்ளது என்று நீங்கள் நினைத்தால், ஸ்விஃப்ட் சரியான மொழியாகும்.
எதிர்வினைகள்:atmenterprises மற்றும் ajthom90

0002378

இடைநிறுத்தப்பட்டது
மே 28, 2017
  • அக்டோபர் 24, 2017
gnasher729 கூறினார்: அது மிகவும் துப்பு இல்லை. பிரச்சனை என்னவென்றால், ஸ்விஃப்ட்டின் அடிப்படை அம்சம், விருப்ப மதிப்புகள் பற்றி OP க்கு தெரியாது. சரத்தில் எண் இல்லை என்றால், கன்ஸ்ட்ரக்டர் டபுள்(ஸ்ட்ரிங்) தோல்வியடையும். அதனால்தான் டபுள் (சரம்) டபுள் வகையின் முடிவை உருவாக்காது மற்றும் உருவாக்க முடியாது, ஆனால் டபுள் வகையின் ஒன்றை உண்டா? , அது ஒரு விருப்பமான இரட்டை. மேலும் ஒரு விருப்பமான இரட்டையை Int உடன் ஒப்பிட முடியாது.

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

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

பசுமை

ஜூலை 15, 2015
ஃபோர்ட் வொர்த்
  • அக்டோபர் 25, 2017
gnasher729 said: பிழையைச் சரிபார்ப்பதே சரியான வழி. உதாரணத்திற்கு

d = இரட்டிப்பு (MyValue), d > 10 {
// MyValue ஒரு எண்ணைக் கொண்டுள்ளது, மேலும் அந்த எண் > 10.
} வேறு {
// MyValue எண்ணைக் கொண்டிருக்கவில்லை, அல்லது அந்த எண்ணானது<= 10.
}

இது தெளிவற்றது - மதிப்பு இருந்தால் என்ன<= 10 should produce different results from the value being nil? To be fair, the OP's post is ambiguous as they were forcing the unwrap, meaning a nil value would crash. However in most business cases, a nil value would be handled differently (safely) from an insufficient value.

மிகவும் தூய்மையான வழி:

குறியீடு: |_+_|
இருப்பினும், MyValue தொடக்கத்தில் இருந்து இரட்டிப்பாக சேமிக்கப்பட வேண்டும் என்று நான் நினைக்கிறேன், மேலும் தேவையான வடிவமைப்பைக் கையாள ஒரு NumberFormatter பின்னர் செயல்படுத்தப்பட்டது. குறியீட்டைப் படித்து முடிப்பவருக்கு இது மிகவும் குறைவான அறிவாற்றல் சுமையைக் கொண்டுள்ளது.
எதிர்வினைகள்:வணிக நிறுவனங்கள்

gnasher729

இடைநிறுத்தப்பட்டது
நவம்பர் 25, 2005
  • அக்டோபர் 26, 2017
maculateConception said: பள்ளியில் நீங்கள் கொடுமைப்படுத்தப்பட்டீர்களா? என்னைத் தாக்காமல் உங்களால் பதிலளிக்க முடியாது என்பதால், உங்களுக்கு சுயமரியாதை குறைவாக இருப்பது போல் தெரிகிறது.

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

சரி, நான் உன்னைத் தாக்கவில்லை. ஸ்விஃப்டைப் பற்றி உங்களுக்கு மிகக் குறைவாகவே தெரியும் என்பதை நிரூபிக்கும் உங்கள் இடுகையை நான் தாக்கினேன், மேலும் ஒரு ஆபத்தான பரிந்துரையையும் சேர்த்துள்ளேன். எஸ்

சைரஸ்

செய்ய
ஆகஸ்ட் 21, 2008
  • அக்டோபர் 26, 2017
நான் பெரும்பாலான நேரங்களில் பாதுகாக்கிறேன் ஆனால் ஒரு வகுப்பில் உள்ள ஒவ்வொரு செயல்பாடுகளும் ஒரே மாறியை காத்தால்... உங்கள் ஆரம்ப இடைமுகத்தை மறுபரிசீலனை செய்ய விரும்பலாம்.

செருகு

ஏப். 14, 2018
  • ஏப். 14, 2018
ஸ்விஃப்ட், உங்கள் மதிப்பு சரியாக எண்ணாக உள்ளதா என்று தெரியவில்லை. உறுதிப்படுத்த இரண்டு விருப்பங்கள் உள்ளன.
1) '!' குறியைச் சேர்ப்பதன் மூலம் இந்த மதிப்பு துல்லியமாக எண்ணாக இருக்கும் என்பதை நீங்கள் குறிப்பிடலாம்.
குறியீடு: |_+_| 2) மதிப்பை வரையறுக்கும்போது வகையை குறிப்பிடலாம்.
குறியீடு: |_+_| TO

வணிக நிறுவனங்கள்

ஜனவரி 28, 2006
  • ஏப். 27, 2018
ynstek கூறினார்: ஸ்விஃப்ட், உங்கள் மதிப்பு சரியாக எண்ணாக உள்ளதா என்று தெரியவில்லை. உறுதிப்படுத்த இரண்டு விருப்பங்கள் உள்ளன.
1) '!' குறியைச் சேர்ப்பதன் மூலம் இந்த மதிப்பு துல்லியமாக எண்ணாக இருக்கும் என்பதை நீங்கள் குறிப்பிடலாம்.
குறியீடு: |_+_| 2) மதிப்பை வரையறுக்கும்போது வகையை குறிப்பிடலாம்.
குறியீடு: |_+_|

உங்கள் #2 உதாரணம் தோல்வியடையும் என்று நான் நினைக்கிறேன், ஏனென்றால் நீங்கள் ஒரு சரம் வார்ப்பை ஒரு Int மாறிக்கு இருமடங்காக ஒதுக்க முயற்சிக்கிறீர்கள். மேலும், நீங்கள் MyValue பூஜ்யமாக இல்லை என்று கருதுகிறீர்கள், இது பூஜ்யமாகவோ அல்லது எண் அல்லாததாகவோ இருந்தால் இயக்க நேரப் பிழையை ஏற்படுத்தலாம்.

உங்கள் #1 எடுத்துக்காட்டு விளக்கமும் சரியாக இல்லை. ஆச்சரியக்குறி ஒரு மதிப்பை ஒரு எண்ணாக மாற்றாது. இது ஒரு விருப்ப மாறியின் மதிப்பை அவிழ்த்துவிடும். உங்கள் எடுத்துக்காட்டில், நீங்கள் இரட்டை மதிப்புடன் முடிவடைவீர்கள், ஒரு எண்ணாக அல்ல, மேலும் MyValue பூஜ்யம் அல்லது எண் அல்லாத மதிப்பாக இருந்தால் மட்டுமே.