Java语言读取的内容用new来生成字典

Java语言读取的内容用new来生成字典,遇到重复的键值如何对其对调,以避免其重复出现呢?解决冲突的代码的思路

没看明白,请详细说下,或者私信

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/232108
  • 这篇博客也不错, 你可以看下Java中的new关键字和引用传参
  • 你还可以看下java参考手册中的 java-学习Java语言 - 描述Java编程语言的基本概念和特点的课程。-泛型是Java编程语言的一个强大功能。它们提高了代码的类型安全性,使更多的错误可以在编译时发现。-通用方法
  • 除此之外, 这篇博客: 【Java语法】关于使用new和不使用new的数组值传递还是引用传递的问题中的 代码 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:
    import java.util.Arrays;
    
    //内部类
    public class Test
    {
    	public static void main(String[] args)
    	{
    		// 普通int变量 num
    		int num = 10;
    		System.out.println("改变前:" + num);
    		change(num);
    		System.out.println("改变后:" + num);
    
    		// a数组 静态数组 不使用new
    		int a[] = { 1, 2, 3, 4, 5 };
    		System.out.println(a.toString());
    		System.out.println("改变前:" + Arrays.toString(a));
    		change(a);
    		System.out.println("改变后:" + Arrays.toString(a));
    
    		// b数组 动态数组 使用new
    		int b[] = new int[5];
    		for (int i = 0; i < 5; i++)
    		{
    			b[i] = 10 + i;
    		}
    		System.out.println(b.toString());
    		System.out.println("改变前:" + Arrays.toString(b));
    		change(b);
    		System.out.println("改变后:" + Arrays.toString(b));
    
    		Test test = new Test();
    		System.out.println(test.toString());
    	}
    
    	public static void change(int[] arr)
    	{
    		arr[0] = 100;
    	}
    
    	// 重载
    	public static void change(int num)
    	{
    		num++;
    	}
    }
    
    
  • 您还可以看一下 邱石老师的java后台+微信小程序 实现完整的点餐系统课程中的 小程序获取用户输入内容并上传到Java服务器小节, 巩固相关知识点
  • 以下回答来自chatgpt:

    可以使用Java中的ConcurrentHashMap来避免重复出现。ConcurrentHashMap是Java 5提供的,它是线程安全的HashMap,比HashTable的扩展性更好。在需要线程安全的情况下,可以使用ConcurrentHashMap,它的底层数据结构采用了分片的方式,将整个数组分为若干个小的HashTable,每个小的HashTable都有自己的锁,这样多个线程同时操作时,只会锁住需要操作的小HashTable,而不是整个数组。同时,ConcurrentHashMap还提供了一些原子操作,如putIfAbsent()、replace()等,能够更好地支持并发操作,避免重复出现。下面是使用ConcurrentHashMap的代码示例:

    import java.util.concurrent.ConcurrentHashMap;
    
    public class TestConcurrentHashMap {
        public static void main(String[] args) {
            ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<String, Integer>();
            map.put("key1", 1);
            map.put("key1", 2);
            System.out.println(map.get("key1")); // 输出2
        }
    }
    

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^