1. Java中的线程安全 Java线程安全:狭义地认为是多线程之间共享数据的访问. Java语言中各种操作共享的数据有5种类型:不可变.绝对线程安全.相对线程安全.线程兼容.线程独立 ① 不可变 不可变(Immutable) 的对象一定是线程安全的,不需要再采取任何的线程安全保障措施. 只要能正确构建一个不可变对象,该对象永远不会在多个线程之间出现不一致的状态. 多线程环境下,应当尽量使对象成为不可变,来满足线程安全. 实现不可变=========> 如果共享数据是基本数据类型,使用final…
一.分析  基本类型可以比较大小,其所对应的包装类型都实现了Comparable接口此问题. 二.场景  代码如下: public class Client{ public static void main(String[] args){ Integer i = new Integer(100); Integer j = new Integer(100); compare(i,j); } } public static void compare(Integer I, Integer j){ Sy…
间歇性混吃等死,持续性踌躇满志系列-------------第12天 1.字符串的概述和特点 java.lang.String类代表字符串 API当中说,Java程序中所有的字符串字面值(如“abc")都作为此类的实例实现 其实就是说:程序中所有的双引号字符串都是String类的对象(就算没有new,也照样是) 字符串的特点: ①字符串的内容用不可变 ②字符串可以共享使用 ③字符串效果上相当于char[]字符数组,但是底层原理是byte[]字节数组 2.字符串的构造方法和直接创建 创建字符串的常…
Java的基本数据类型的包装数据类型有多种: int Integer,short Short,boolean Boolean,float Float,double Double等等. Java包装类数据类型的基本作用,在于基本数据类型与String类型之间的转换. 基本数据类型转字符串类型: 基本数据类型+"" 基本数据类型.toString() 字符串转基本数据类型: xxx  a  =  Xxx.parseXxx(String); 比如:int a = Integer.parseI…
java 判断字符串编码类型 public static String getEncoding(String str) { String encode = "GB2312"; try { if (str.equals(new String(str.getBytes(encode), encode))) { String s = encode; return s; } } catch (Exception exception) { } encode = "ISO-8859-1&…
想要对基本类型数据进行更多的操作,最方便的方式就是将其封装成对象. 为啥呢?因为在对象描述中就可以定义更多的属性和行为对该基本数据类型进行操作. [八种基本数据类型的包装类] byte --Byte short --Short int --Integer long-----Long float-----Float double----Double char----Character boolean---Boolean 基本数据类型变成对象包装类的好处] 1 可以将基本数据和字符串之间进行互相的转…
一.java中八种基本数据类型对应的包装类型 基本数据类型      包装类型 byte                    java.lang.Byte short                   java.lang.Short int                      java.lang.Integer long                    java.lang.Long float                    java.lang.Float double  …
首先看一下几个测试题,验证一下java中对基本类型和包装类型的理解,看看最后输出的答案对不对,答案在这篇博客中哦: // 第一题: 基本类型和包装类型 int a = 100; Integer b = 100; System.out.println(a == b); // 第二题: 两个包装类型 Integer c = 100; Integer d = 100; System.out.println(c == d); // 第三题 c = 200; d = 200; System.out.pri…
说到数据类型这个问题是一个基本的不能再基本的问题,我们当初编程入门第一课一般就是讲数据类型,而今天我想记录的是一个在Java中容易忽略的问题,即基本类型和包装类型. 一.基本类型出现的原因 我们都知道在Java语言中,new一个对象存储在堆里,我们通过堆栈中的引用来使用这些对象:但是对于经常用到的一系列类型如int,如果我们用new将其存储在堆里就不是很有效——特别是简单的小的变量.(如下图所示为内存空间示意图) 所以就出现了基本类型,同C++一样,Java采用了相似的做法,对于这些类型不是用n…
基本包装类型 基本包装类型是特殊的引用类型.每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,从而可以调用属性.方法来进行后续操作. ECMAScript还提供了三种基本包装类型:Number.String.Boolean. 代码现状 我们经常写类似这样的代码,基本类型的变量可以当做对象一样调用属性.方法,但这又不是一个真正的对象只是一个变量而已,那么这是为什么呢? var str = "hello world"; console.log(str.length);…