类型扩展

整数扩展

进制:二进制(0b)、八进制(0)、十进制(自然数)、十六进制(0x)(不分大小写)。

int a = 0b101,//用二进制数表示十进制数
int b =0101,
int c =0x101;

注:int是整型,不是整数。


浮点型扩展

float与double这俩种分配的内存空间并非全存数字,分为三部分。

三部分:符号(+-),指数位(2^n,系统中储存),数据。

float:23bit;double:52;故超出范围会被用就近原则(四舍五入)优化掉。

浮点型性质:离散,有限,超出接近而不相等;故需要精准的方面不能用浮点型进行比较统计,改用内部类'BigDecimal'。


字符型扩展

扩展:记录jdk对照表(Unicode)里面的字符可以转换成int。

'/u' , '/t' , '/'(作用于后面一个字符)用在字符或者字符串中。

int c1 ='a'
System.out.println(int(c1))//输出97
    

' " " '和' ' ' '表示字符或者字符串的始末且不包含在字符内;故易出现以下问题

String s = "我喜欢说: "666""//结果只有:我喜欢说(遇到第二个"结束)
    String s = "我喜欢说:/"666/""//""这个作为普通输出了,故在内部
    //"abc"+"bca"有+这些连接符不会断,输出为二者结果(字符串只有加法)

'/'在外部作为除法,字符或字符串中作为转义。


再扩展

引用类型的变量中存储的是地址,再由地址指向对象;

基本类型中的变量存储的是值;

故而引出以下结论:

  • 对于基本类型判断符'=='比较的是值是否相等
  • 对于引用类型则是比较地址
  • 且引用类型与boole型无法使用'>'和'<',其他基本类型可用

String s = new String("sas");

String d = new String("sas");

System.out.println(s==d);//输出false

因为使用new会开辟新地址而引用型比较的是地址故不相同。

String f ='6';

String h='6';

System.out.println(f==h);//输出true

因为不用new,对于存在过的值共用地址。

String s = new String("sas");//变量(s),对象(new String())
    String g ="6";//变量(g),对象(6)
String d = new String("sas");
    System.out.println(s==d);//输出false,

小拓展

public static void main(String[] arg),这里的String[] arg 用于存放运行时需要的参数。

java dog cat dog 666

"cat","dog","666"这个是参数

posted on 2026-08-14 23:08  猫头鹰(新手版)  阅读(4)  评论(0)    收藏  举报