pub fn insert(&mut self, key: u64, value: i8) {
        let idx: usize = self.get_idx(key);
        self.buckets[idx] = Some((key, value));
    }

    pub fn insert2(&mut self, key: u64, value: i8) {
        self.buckets[self.get_idx(key)] = Some((key, value));

    }


    fn get_idx(&self, key: u64) -> usize {
        let mut hasher = DefaultHasher::new();
        key.hash(&mut hasher);
        hasher.finish() as usize % self.buckets.capacity()
    }


위에껀 되는데 아래껀 안되는 이유가 먼가요?