java:警告:[unchecked] 对作为普通类型 java.util.HashMap 的成员的put(K,V) 的调用未经检查
java:警告:[unchecked] 对作为普通类型 java.util.HashMap 的成员的put(K,V) 的调用未经检查
一、问题:学习HashMap时候,我做了这样一个程序:
import java.util.HashMap;
public class testHashMap{
public static void main(String[] args)
{
HashMap hm = new HashMap();
hm.put("txtSearchProvince","北京");
hmPara.put("txtSearchCity","西安");
System.out.println("参数个数:" + hmPara.size());
}catch(Exception e){
System.out.print(e.getMessage());}
}
}//end class
编译时:
c:\javac testHashMap.java
提示如下:
testHashMap.java 使用了未经检查或不安全的操作。
要了解详细信息,请使用 -Xlint:unchecked 重新编译。
c:\javac -Xlintunchecked testHashMap.java
提示是:
testHashMap.java:8: 警告: [unchecked] 对作为普通类型 java.util.HashMap 的成员的
put(K,V) 的调用未经检查
二、修改办法:
HashMap hm = new HashMap();
改为--HashMap<String,String> hm = new HashMap<String,String>();
---->这里面的String 又代表了什么呢?
三、查资料:
你的JDK版本是1.5,1.5是支持泛型的,但你的写法不是用泛型的写法,所以编译的时候出了警告。
将你的protected static ArrayList table=new ArrayList(); 改成
protected static ArrayList<BigInteger> table=new ArrayList<BigInteger>();
这里说了一个[泛类型]的概念
四、引申:
HashMap<String,Integer> hm = new HashMap<String,Integer>();
hm.put("txtSearchProvince",1);
这也是1.5的新特性,自动封装成了Integer了 ,当然也可以自动把Integer变成int
这个可以通用:HashMap<Object, Object> hmPara = new HashMap<Object, Object>();
java:警告:[unchecked] 对作为普通类型 java.util.HashMap 的成员的put(K,V) 的调用未经检查的更多相关文章
- [unchecked] 对作 为原始类型Hashtable的成员的put(K,V)的调用未经过检查。。。
问题: C:\Users\Administrator\Desktop\java\SoundApplet.java:212: 警告: [unchecked] 对作为原始类型Hashtable的成员的pu ...
- Java 原始类型JComboBox的成员JComboBox(E())的调用 未经过检查
问题描述: 根据书上的代码 ,编译时候出现以下问题 自定义了一个字符数组: private String[] grades = {"1","2","3 ...
- 警告: [unchecked] 对作为原始类型IScheme的成员的write(TProt ocol,T)的调用未经过检查
jdk 从8 改成了7 就好了! 或者, 修改源码, 每个响应的地方加上 surppressingWarnings xxx , 或者使用 请使用 -Xlint:unchecked 重新编译. 参照 h ...
- Java中的使用了未经检查或不安全的操作
1. javac -Xlint:unchecked MyMath.java检查不安全的操作 /***************************************************/ ...
- Java源码解析——集合框架(五)——HashMap源码分析
HashMap源码分析 HashMap的底层实现是面试中问到最多的,其原理也更加复杂,涉及的知识也越多,在项目中的使用也最多.因此清晰分析出其底层源码对于深刻理解其实现有重要的意义,jdk1.8之后其 ...
- Effective Java 第三版——61. 基本类型优于装箱的基本类型
Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...
- Java 泛型 四 基本用法与类型擦除
简介 Java 在 1.5 引入了泛型机制,泛型本质是参数化类型,也就是说变量的类型是一个参数,在使用时再指定为具体类型.泛型可以用于类.接口.方法,通过使用泛型可以使代码更简单.安全.然而 Java ...
- java 泛型的内部原理:类型擦除以及类型擦除带来的问题
一.Java泛型的实现方法:类型擦除前面已经说了,Java的泛型是伪泛型.为什么说Java的泛型是伪泛型呢?因为,在编译期间,所有的泛型信息都会被擦除掉.正确理解泛型概念的首要前提是理解类型擦出(ty ...
- 【转】java中byte数组与int类型的转换(两种方式)----不错
原文网址:http://blog.csdn.net/piaojun_pj/article/details/5903009 java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法, ...
随机推荐
- 运用泛型,冒泡排序实现JDK引用类型数组的排序
public class Utils { public static <T extends Comparable<T>> void sortList(List<T> ...
- [转载] SSH入门学习基础教程
在Linux系统中,OpenSSH是目前最流行的远程系统登录与文件传输应用,也是传统Telenet.FTP和R系列等网络应用的换代产品.其 中,ssh(Secure Shell)可以替代telnet. ...
- TotoiseSVN的基本使用方法
TotoiseSVN的基本使用方法 在 项目管理实践教程一.工欲善其事,必先利其器[Basic Tools]中,我已经讲解了怎样安装TortoiseSVN.在上面的讲解中已经讲了怎么使用VisualS ...
- python学习5 常用三方模块
watchdog: 监控指定目录/文件的变化并自定义处理事件 例子
- angularJS- $http请求
angular使用post.get向后台传参的问题 一.问题的来源 我们都知道向后台传参可以使用get.put,其形式就类似于name=jyy&id=001.但是在ng中我却发现使用$http ...
- mongoose数据库连接和操作
var mongoose = require('mongoose') mongoose.connect('mongodb://localhost:27017/hometown'); var db = ...
- 窗体Showmedol 遇到的奇怪异常: cannot make a visible window model
//窗体Showmedol 遇到的奇怪异常: cannot make a visible window model //背景:ShowModal A窗体,A窗体再ShowModal B窗体:A是透明背 ...
- java基础-泛型3
浏览以下内容前,请点击并阅读 声明 8 类型擦除 为实现泛型,java编译器进行如下操作进行类型擦除: 如果类型参数有限制则替换为限制的类型,如果没有则替换为Object类,变成普通的类,接口和方法. ...
- nandaom
this python</div><div><br></div><div>hahah</div><div> 来自为知 ...
- 【生活没有希望】NOIP2010初赛 烽火传递 smartoj1475
整天初赛题做做,生活没有希望 用单调队列优化的dp 因为满足后来的总比先来的(在某些方面)更优 所以能用单调队列 n2变成n #include <cstdio> ],b[],c[]; in ...