डार्ट में इंट को डबल कैसे कन्वर्ट करें?


105

निम्न त्रुटि उत्पन्न करता है:

int calc_ranks(ranks)
{
  double multiplier = .5;
  return multiplier * ranks;
}

वापसी प्रकार doubleएक नहीं है int, जैसा कि विधि द्वारा परिभाषित किया गया है calc_ranks। मैं राउंड / कास्ट कैसे करूँ int?

जवाबों:


141

round()विधि का उपयोग करके इसे गोल करें :

int calc_ranks(ranks) {
    double multiplier = .5;
    return (multiplier * ranks).round();
}

15
या इसे int: truncate to int: return (गुणक * रैंक) .toInt (); (देखें api.dartlang.org/docs/channels/stable/latest/dart_core/… )
Everton

2
@ मेरे पास ऐसे मामले थे जिनमें (0.57 * 100).toInt()हल किया गया था 56, इसलिए, लोग सावधान रहें।
'20

71

आप बस a को कन्वर्ट करने के लिए toInt () का उपयोग कर सकते हैं ।numint

int calc_ranks(ranks)
{
  double multiplier = .5;
  return (multiplier * ranks).toInt();
}

ध्यान दें कि बिल्कुल वही काम करने के लिए जिसे आप Truncating Division ऑपरेटर का उपयोग कर सकते हैं :

int calc_ranks(ranks) => ranks ~/ 2;

70

आप निम्न में से किसी का उपयोग कर सकते हैं।

double d = 20.5;

int i = d.toInt(); // i = 20
int i = d.round(); // i = 21
int i = d.ceil();  // i = 21
int i = d.floor(); // i = 20

तो, क्या अंतर और फर्श या गोल और छत के बीच का अंतर है
हेक्टर

0

डार्ट राउंड डबल टू इंट

round()विधि का उपयोग करते हुए , हम एक पूर्णांक को एक दोहरे के करीब प्राप्त कर सकते हैं।

उदाहरण के लिए:

int num1 = (2.3).round();
// 2

int num2 = (2.5).round();
// 3

int num3 = (-2.3).round();
// -2

int num4 = (-2.5).round();
// -3

आप उन तरीकों को भी आज़मा सकते हैं जो एक फड़फड़ाहट में इंट में डबल कन्वर्ट करते हैं

  double x = 2.5;
 
  int a = x.toInt();
  int b = x.truncate();
  int c = x.round();
  int d = x.ceil();
  int e = x.floor();
 
  print(a); // 2
  print(b); // 2
  print(c); // 3
  print(d); // 3
  print(e); // 2

सबसे पहले, यह सवाल roundडार्ट में क्या मतलब है के बारे में नहीं था । दूसरा, बाकी चीजें केवल मौजूदा उत्तर से कॉपी की जाती हैं । कृपया एसओ को इस तरह से स्पैम न करें। आप केवल अन्य उत्तरों की नकल कर रहे हैं।
20'डीबॉडी

@ आई डुप्लिकेट क्यू: "डार्ट में इंट को डबल कैसे कन्वर्ट करें?" यह उत्तर: "गोल का उपयोग करके () हम एक पूर्णांक को एक दोहरे के सबसे करीब पा सकते हैं"। आपको कैसे लगता है कि उत्तर प्रश्न से संबंधित नहीं है?
रुबेन

@ रुबेन यह उत्तर पहले से ही अन्य उपयोगकर्ता द्वारा प्रदान किया गया है। एक ही चीज को बार-बार पोस्ट करने में कोई फायदा नहीं है।
i

मैंने आपको पहले ही बता दिया है कि अब से मैं ध्यान रखूंगा, तब भी आप नीचे मतदान करके एक टिप्पणी क्यों छोड़ रहे हैं। जबकि इस में विधि समान है, लेकिन इसे अलग तरीके से समझाने की कोशिश करते हैं, इस तरह से मैंने एक उदाहरण दिया है कि कैसे नंबर लिया जाए
परेश मंगुक्किया

इसमें मैंने यह समझाने की कोशिश की है कि एक पूर्णांक एक दोहरे के सबसे करीब कैसे होता है। इस int द्वारा num1 = (2.3) .round (); // 2 int num2 = (2.5)। सराउंड (); // 3 int num3 = (-2.3)। सराउंड (); // -2 int num4 = (-2.5)। चारों ओर (); // -3
परेश मंगुकिया
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.