zoukankan      html  css  js  c++  java
  • Java基于二维数组自定义的map

    直接上代码作为记录:

    package com.example.demo.day4.test1;
    
    import java.util.regex.MatchResult;
    
    /**
     *  @Author: caesar
     *  @Date:2020年12月22日 14:12:04
     *  @Description: 自己定义的map
     */
    public class MyMap<K,V>{
        public static void main(String[] args) {
            MyMap<String,Object> myMap = new MyMap<String, Object>(10);
            myMap.put("name","wsq");
            myMap.put("age",13);
            myMap.put("length",185);
            myMap.put("name","ZS");
            System.out.println(myMap.toString());
            System.out.println(myMap.get("age"));
        }
        private Object array[][];
        private int index = 0;
        // 初始化数组长度
        public MyMap(int length){
            array = new Object[length][2];
        }
        // 添加数据
        public void put(K key, V value){
            // 重复值直接进行覆盖
                for(int i = 0; i < index; i++){
                    if(array[i][0].equals(key)){
                        array[i][1] = value;
                        return;
                    }
                }
            if(index >= array.length){
                throw new ArrayIndexOutOfBoundsException();
            }
            array[index++] = new Object[]{key,value};
        }
        // 获取数据
        public V get(K key){
            V value = null;
            for(int i = 0; i < index; i++){
                if(array[i][0].equals(key)){
                    value = (V) array[i][1];
                }
            }
            return value;
        }
    
        /**
         *  @Author: caesar
         *  @Date:2020年12月22日 14:12:59
         *  @Description: 输出值
         */
        public String toString(){
            StringBuffer stringBuffer = new StringBuffer();
            for(int i = 0; i < index; i++){
                stringBuffer.append(array[i][0]);
                stringBuffer.append(":");
                stringBuffer.append(array[i][1]);
                stringBuffer.append("
    ");
            }
            return stringBuffer.toString();
        }
    }
  • 相关阅读:
    Exception: Failed to execute 'setItem' on 'Storage'
    element ui中动态添加的表单进行验证
    10. 自定义assertThat中的Matcher函数lt、gt
    8. anyInt()、anyString()、eq()、anyCollection()、verify验证void方法
    7. 参数匹配:eq、isA、any
    6. spy
    4-5. when-thenXX、doXX-when、Answer、thenCallRealMethod
    2. 开启Mock的三种方式、深度Mook
    1. quickstart
    Sentinel
  • 原文地址:https://www.cnblogs.com/mcjhcnblogs/p/14173452.html
Copyright © 2011-2022 走看看