
java basic note
hello 明天
这个作者很懒,什么都没留下…
展开
-
java中两种生成指定区间随机数
Java中有两种生成随机数的做法一种是直接调用Math类中的random方法,即Math.random(),该方法生成的[0,1)的随机双精度浮点数,我们可以通过变换来实现我们要的指定区间的随机数,如我们想生成[min,max]区间的整数,可以这样做,int ran=(int)(Math.random()*(max-min+1))+min。另一种是调用Random类中的nextInt,next...原创 2019-01-30 13:39:02 · 2225 阅读 · 0 评论 -
java中各进制之间的转换
十进制转成十六进制:Integer.toHexString(int i)十进制转成八进制:Integer.toOctalString(int i)十进制转成二进制:Integer.toBinaryString(int i)十六进制转成十进制:Integer.valueOf("FFFF",16)八进制转成十进制:Integer.valueOf("876",8)二进制转十进制:Integer.valueOf("0101",2)将字符串参数解析未第二个参数指定的基数中的有符号整数:Inte原创 2020-09-29 12:33:24 · 280 阅读 · 0 评论 -
关于String的intern()方法细节
String.intern()是一个Native方法,底层调用C++的 StringTable::intern方法实现。当通过语句str.intern()调用intern()方法后,JVM 就会在当前类的常量池中查找是否存在与str等值的String,若存在则直接返回常量池中相应Strnig的引用;若不存在,则会在常量池中创建一个等值的String,然后返回这个String在常量池中的引用。因此,只要是等值的String对象,使用intern()方法返回的都是常量池中同一个String引用,所以,这些等..原创 2020-09-25 15:44:09 · 1147 阅读 · 2 评论 -
关于String中创建对象的区别
String的创建方式一般有两种,一种是常见的new String(),如String s1 = new String("ab"),另一种是字面量赋值,如String s2 = "ab"。第一种对象的创建方式会创建两个对象,一个是new创建的对象,一个是在字符串常量池中创建"ab"字符串。第二种方式是直接在字符串常量池中创建"ab"字符串(前提是字符串常量池没有该字符串,有的话,直接把该引用赋值给s2)。public void test1(){ String s1 = "a" + ..原创 2020-09-25 13:35:16 · 354 阅读 · 0 评论 -
java创建对象的详细步骤
java创建对象一共分为六个步骤:1.判断对象对应的类是否加载、链接(链接又分为校验、准备、解析)、初始化。2.为对象分配内存: (1)如果内存规整——指针碰撞(假设java堆中内存是绝对规整的,所有用过的内存放一边,未使用过的放一边,中间有一个指针作为临界点,如果新创建了一个对象则是把指针往未分配的内存挪动与对象内存大小相同距离,这个称为指针碰撞。)。 (2)如果内存不规整——虚拟机维护一个列表、然后通过空闲列表分配内存。3.处理并发安全问题。4.初始化分配到的空间——给所有属..原创 2020-09-24 15:10:29 · 696 阅读 · 0 评论 -
==和equals的区别
1."= =“的用法(1)当数据类型为int,float,double,long,short等基本类型时,” = =“比较的是他们的值是否相等。(2)当数据类型是复合型时(如String,数组,一般类等),“= =”比较的是他们的存放地址是否相同。2.“equals”的用法(1)equals是继承自java.lang.Object类,即所有类都拥有equals方法,Object中的equa...原创 2019-01-29 21:48:14 · 88 阅读 · 0 评论 -
StringBuffer常用方法简单总结
StringBuffer是字符串缓冲区,是一个容器,有三个特点。(1).长度是可以变化的。(2).可以操作多个数据类型。(3).最终会通过toString转换为字符串.StringBuffer的常用方法存储StringBuffer append(数据):将指定数据作为参数添加到已有数据结尾处。StringBuffer insert(int index,数据):将数据插入到指定位置...原创 2019-07-06 23:30:46 · 656 阅读 · 0 评论