Java基础知识
岁月无痕study
这个作者很懒,什么都没留下…
展开
-
List转String时注意事项
Object类是所有对象类的父类,而toString方法只能把那些可以转换为字符串的类型对象转换为字符串,否则转换后还是一个对象。例如:“woshizifuchuan”是一个String类型的对象,“woshizifuchuan”.toString();结果还是“woshizifuchuan”;Org是一个组织的对象,如果Org.toString();结果是不正常的,因为Org对象中可能有多个属性,原创 2016-07-29 10:09:55 · 331 阅读 · 0 评论 -
java集合框架
最近专门抽空看了一下java面试宝典的时候,又一次的看到了java集合之间的对比,感觉有必要进行一下整理,不然每次都要去重新翻阅。 首先看一下java集合框架图: 实线边框的是实现类,比如ArrayList,LinkedList,HashMap等,长虚线边框的是抽象类,比如AbstractCollection,AbstractList,AbstractMap等,而短虚线边框的是接口,比如Coll原创 2017-03-20 13:04:13 · 296 阅读 · 0 评论 -
java I/O 输入输出流
最近观看了关于java 输入输出流的视频,在此做一下总结:1、在我们平常使用的window电脑中,编码格式是ANSI,如果创建一个文本文件设置为UTF-8格式,中文会造成乱码;2、将字符串转换为字节序列,利用的是默认的编码,一般是gbkString s="我是lyt";byte[] bytes=s.getBytes(); 3、把字节转换为int 以16进制表示:可以用方法Integer.toHe原创 2017-03-10 15:48:13 · 393 阅读 · 0 评论 -
Java泛型详解
转载请注明出处: http://blog.csdn.net/seu_calvin/article/details/522300321.为什么需要泛型泛型在Java中有很重要的地位,网上很多文章罗列各种理论,不便于理解,本篇将立足于代码介绍、总结了关于泛型的知识。 先看下面的代码:List list = new ArrayList(); list.add("CSDN_SEU_Calvin");转载 2017-03-07 22:21:30 · 403 阅读 · 0 评论 -
Java中反射的实现方式
所谓反射,是指在运行时状态中,获取类中的属性和方法,以及调用其中的方法的一种机制。这种机制的作用在于获取运行时才知道的类(Class)及其中的属性(Field)、方法(Method)以及调用其中的方法,也可以设置其中的属性值。 在Java中实现反射最重要的一步,也是第一步就是获取Class对象,得到Class对象后可以通过该对象调用相应的方法来获取该类中的属性、方法以及调用该类中的方法。 Jav转载 2017-03-23 20:13:53 · 580 阅读 · 0 评论 -
Java如何从HttpServletRequest中读取HTTP请求的body
注意:下面方法已验证通过。HTTP请求中的是字符串数据://字符串读取void charReader(HttpServletRequest request) {BufferedReader br = request.getReader();String str, wholeStr = "";while((str = br.readLine()) != null){wholeStr += str;转载 2017-05-01 12:38:53 · 2276 阅读 · 0 评论 -
用Java对JSON字符串进行格式化输出
工作中进行http相关接口测试时经常会收到返回的json数据,因为没有格式化输入到控制台后看起来很不直观。早上写了一个小工具类,对这JSON串进行格式化输出,代替System.out.print/** * 格式化输入工具类 * * @author lizhgb * @date 2015-10-14 * @Modified 2017-04-28 * */public final c转载 2017-05-01 20:06:36 · 9444 阅读 · 2 评论 -
request.getRequestURI()、getRequestURL()、getContextPath()、getServletPath()区别
request.getRequestURI() 、request.getRequestURL() 、request.getContextPath()、request.getServletPath()区别request.getRequestURI() /jqueryWeb/resources/request.jsp request.getRequestURL() http://localhost:8转载 2017-05-25 09:46:14 · 485 阅读 · 0 评论 -
Java HashMap的死循环
在淘宝内网里看到同事发了贴说了一个CPU被100%的线上故障,并且这个事发生了很多次,原因是在Java语言在并发情况下使用HashMap造成Race Condition,从而导致死循环。这个事情我4、5年前也经历过,本来觉得没什么好写的,因为Java的HashMap是非线程安全的,所以在并发下必然出现问题。但是,我发现近几年,很多人都经历过这个事(在网上查“HashMap Infinite Loop转载 2017-06-05 18:02:28 · 404 阅读 · 0 评论 -
Java三种移位运算符
java中有三种移位运算符1、<< : 左移运算符,value<< num,相当于value乘以2的num次方 方法:丢掉最高位移动的位数,最低移动的位数补0,若num大于value转为二进制后的最大位数n,则取模num%n例如:9 <<2 9—int类型,对应的二进制形式为:0000 0000 0000 0000 0000 0000 0000 1001; 2—代表该数字高位(左侧)的两个零原创 2017-06-06 11:52:33 · 683 阅读 · 0 评论 -
java中==和“equals”的区别
平时在学Android和Java语言的时候,总是碰到“equals”和“==”这两个字符,老感觉差不多;其实还是有一些区别的,今天干脆把它们彻底弄清楚。一、java当中的数据类型和“==”的含义:基本数据类型(也称原始数据类型) :byte,short,char,int,long,float,double,boolean。它们之间的比较,应用双等号(==),比较的是它们的值。 复合数据类型(类):转载 2017-03-02 13:58:58 · 406 阅读 · 0 评论 -
Java中final和static的用法
1、 final 含义是最终的,可以用来修饰非抽象类、非抽象方法、和变量final修饰的类不能被继承,没有子类,final类中的方法默认是final的; final修饰的方法不能被子类的方法覆盖重写,但可以被继承; final修饰的成员变量表示常量,只能被赋值一次,赋值后不能再被改变; final修饰的形参只能读取,不能修改; private不能被子类方法覆盖,private类型的方法原创 2017-03-02 11:59:54 · 847 阅读 · 0 评论 -
hashcode和equals的作用
hashCode是用于查找使用的,而equals是用于比较两个对象的是否相等的。以下这段话是从别人帖子回复拷贝过来的:1.hashcode是用来查找的,如果你学过数据结构就应该知道,在查找和排序这一章有 例如内存中有这样的位置 0 1 2 3 4 5 6 7 而我有个类,这个类有个字段叫ID,我要把这个类存放在以上8个位置之一,如果不用hashcode而任意存放,那么当查找时就需转载 2017-02-08 14:16:16 · 441 阅读 · 0 评论 -
String、StringBuffer、StringBuilder的区别
1、String不属于8种基本数据类型, 是final的,不可被继承,String类声明的对象的值是不能改变的,任何对String对象的操作都会引起新的String对象的产生。String是线程是非安全的。String str=“abc” //此时str中存的是字符串abc在字符串池中的地址;例如0X0021String str1=str;System.out.print(str);// 结原创 2016-07-20 15:32:53 · 329 阅读 · 0 评论 -
URLConnection类
抽象类 URLConnection 是所有表示应用程序与 URL 之间通信链路的类的超类。该类的实例可以用来对由 URL 引用的资源进行读取和写入操作;直接上例子。原创 2016-07-29 12:01:03 · 465 阅读 · 0 评论 -
HttpURLConnection类
public String Created(String loginName, String password, String userName, String mobile) { String urlParameter = "loginName=" + loginName + "&password=" + password + "&userName=" + username+原创 2016-07-29 11:01:28 · 314 阅读 · 0 评论 -
java中的break、continue、return区别
1、break:可以用于for循环等循环体和开关语句switch case中;用在循环中时,break是指跳出当前的循环体,如果是嵌套循环的话,只能跳出离break最近的for循环层;例如: public static void main(String[] args) { for (int i = 0; i<=5; i++) { if (i == 3)原创 2016-09-22 16:27:35 · 1119 阅读 · 0 评论 -
InputStream与OutputStream的比较
如果一个程序只包含固定数量的且其生命周期都是已知的对象,那么这是一个非常简单的程序。 通常,程序总是根据运行时才知道的某些条件去创建新对象,在此之前,不会知道所需对象的数量,甚至不知道确切的类型。为解决这个普通的编程问题,需要在任意时刻和任意位置创建任意数量的对象。所以,就不能依靠创建命名的引用来持有每一个对象。 因为你不知道实际上会需要多少这样的引用。 大多数语言都提供某种方法来解决这个基转载 2017-02-05 11:46:56 · 338 阅读 · 0 评论 -
成员变量、类变量、局部变量的区别
变量名首写字母使用小写,如果由多个单词组成,从第2个单词开始的其他单词的首写字母使用大写。 如果局部变量的名字和成员变量的名字相同, 要想在该方法中使用成员变量,必须使用关键字this。class People { String name = "类体重定义的name"; //类中的成员变量并赋值 People(){ } public vo转载 2017-02-05 13:12:49 · 518 阅读 · 0 评论 -
Java中对象的上转型对象
1、 定义 如果B类是A类的子类或间接子类,当用B类创建对象b并将这个对象b的引用赋给A类对象a时,如:A a;a = new B();或者A a;B b = new B();a = b;则称A类对象a是子类B对象b的上转型对象。 2、 性质 对象b的上转型a的实体是有子类B创建的,但是上转型对象会失去子类B的一些属性和功能。上转型对象具有以下特点:上转型对象不能操作子类新增加的成员转载 2017-02-07 13:23:11 · 1533 阅读 · 0 评论 -
HashMap原理详讲
对于HashMap的学习我们需要注意的概念和问题有 1、什么是HashMap以及HashMap的构成 2、HashMap的基本存储原理以及存储内容的组成 3、HashMap的工作原理以及存取方法过程 4、HashMap中解决碰撞的方法 5、 equals()和hashCode()的应用,以及它们在HashMap中的重要性 6、 不可变对象的好处 6、 HashMap多线程的条件竞原创 2017-02-08 13:34:45 · 14993 阅读 · 0 评论 -
Java HashMap遍历的三种方式
public class TestHashMap { public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>(); for (int i = 0; i < 5; i++) { map.put(i + ""原创 2017-03-23 20:52:14 · 11295 阅读 · 4 评论