Summaries On Java
@1:== 和 equals():
==用于比较引用和比较基本数据类型时具有不同的功能:
比较基本数据类型:如果两个值相同,则结果为true.
比较引用:如果引用指向内存中的同一对象,结果为true(如果地址相同则结果为true).
equals()默认情况下比较的也是地址,但有些类覆盖了Object类的equals()方法,比较规则为:
如果两个对象的类型一致,并且内容一致,则返回true; 这些类有:
java.io.file,java.util.Date,java.lang.string,包装类(Integer,Double等)
之所以提供equals()方法,是因为==运算符不允许我们进行覆写,而equals()方法却可以,这样我们就可以自定义比较方法。
代码示例:
import java.util.*;
public class equalsDemo {
public static void main (String [] args){
Scanner sc = new Scanner(System.in);
String str = sc.next();
if(str == "lxw"){
System.out.println(str + " == \"lxw\"");
}
else if(str.equals("lxw")){
System.out.println(str + ".equals(\"lxw\")");
}
String str1 = "lxw";
String str2 = "lxw";
System.out.println("str1 == str2 : " + (str1 == str2));
System.out.println("str1.equals(str2) : " + str1.equals(str2));
String str3 = new String("lxw");
String str4 = new String("lxw");
System.out.println("str3 == str4 : " + (str3 == str4));
System.out.println("str3.equals(str4) : " + str3.equals(str4));
}
}
Output:
lxw
lxw.equals("lxw")
tr1 == str2 : true
str1.equals(str2) : true
str3 == str4 : false
str3.equals(str4) : true
注意比较str1 == str2和str3 == str4的结果,并理解两者的不同。
@2:Java的参数传递感觉本质上和Python是一样的,可以参考Python中的参数传递。
1、Java函数调用时,参数传递方式为值传递;
2、当该参数类型为对象(Object)时,则所传递的值为对象的引用(也可理解为地址)。
@3:Java args:
lxw JNP$ java argsDemo , , ,
args[0]: 1
args[]: ,
args[]: ,
args[]:
args[]:
args[]: ,
@4:String, StringBuilder, StringBuffer 内有关于三种类型字符串的常见面试题【确实非常经典】
String、StringBuilder、StringBuffer三者的执行效率:StringBuilder > StringBuffer > String
当字符串相加操作或者改动较少的情况下,建议使用 String str=”hello”这种形式;
当字符串相加操作较多的情况下,建议使用StringBuilder,如果采用了多线程,则使用StringBuffer。
@5: 对final变量的访问在编译期间都会直接被替代为真实的值。
@6:
Summaries On Java的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- Java学习心得之 HttpClient的GET和POST请求
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 HttpClient的GET和POST请求 1. 前言2. GET请求3 ...
- Java性能提示(全)
http://www.onjava.com/pub/a/onjava/2001/05/30/optimization.htmlComparing the performance of LinkedLi ...
- 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题
背景起因: 记起以前的另一次也是关于内存的调优分享下 有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...
- Elasticsearch之java的基本操作一
摘要 接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...
- 论:开发者信仰之“天下IT是一家“(Java .NET篇)
比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...
- 故障重现, JAVA进程内存不够时突然挂掉模拟
背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...
- 死磕内存篇 --- JAVA进程和linux内存间的大小关系
运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...
- 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用
有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...
随机推荐
- atitit.项目设计模式---ioc attilax总结v4 q11
atitit.项目设计模式---ioc attilax总结v4 q11 1. ioc的原理1 1.1. .IOC的之前1 1.2. ioc后的实现2 1.3. ioc的演化2 1.4. 依赖注入和控制 ...
- 【Nginx-反向代理server】基础知识(二)之多进程模式
Nginx的多进程模式 nginx在启动后.会有一个master进程和多个worker进程.master进程主要用来管理worker进程,包括:接收来自外界的信号.向各worker进程发送信号,监控w ...
- 183.Wood Cut【hard】
183.Wood Cut[hard] Given n pieces of wood with length L[i] (integer array). Cut them into small piec ...
- eclipse中使用jetty启动项目
eclipse里修改 Goals值 Tomcat -Dmaven.tomcat.port=8080 tomcat:run Jetty -Djetty.port=8081 jetty:run
- Nandflash镜像尾部不应填充0xFF
Nandflash镜像文件系统尾部经常被填充0xFF以补齐大小,这样做是错误的,可能会有意想不到的bug.包括JFFS2.UBIFS等. 因此建议丢弃多余的0xFF. 出自:http://www.li ...
- 一种安全云存储方案设计(下)——基于Lucene的云端搜索与密文基础上的模糊查询
一种安全的云存储方案设计(未完整理中) 一篇老文了,现在看看错漏颇多,提到的一些技术已经跟不上了.仅对部分内容重新做了一些修正,增加了一些机器学习的内容,然并卵. 这几年来,云产品层出不穷,但其安全性 ...
- Yii2的redis扩展
在应用的时候需要先对yii2进行扩展安装 如果装有composer直接运行 php composer.phar require --prefer-dist yiisoft/yii2-redis 当然也 ...
- php文件加密
1.在线加密 网址:http://www.phpjm.net/encode.html 本人测试过还可以,就是纯加密,没有解密.
- hdu 2586(最近公共祖先LCA)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2586 思路:在求解最近公共祖先的问题上,用到的是Tarjan的思想,从根结点开始形成一棵深搜树,非常好 ...
- python学习【第四篇】python函数 (一)
一.函数的介绍 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以 ...