JAVA学习笔记 day2 面试部分细节

JAVA学习笔记 day2

1.字符对象

对象池与字符的比较

String sa = new String("hello");
String sb = new String("hello");
String sc = "hello";
String sd = "hello";

System.out.println(sa==sb);
System.out.println(sc==sd);

在这两个例子中,分别输出F和T,因为在new一个String对象时,会产生一个新对象,同时分配的系统内存是不一样的,也就是说,这个比较的不是String的内容,而是String对象本身。后者是两个字符变量的比较,输出T没问题,好理解。


2.类型转换

低--------------------------------------------------->高

byte,short,char->int ->long->float->double

byte类型数据范围 -127—>128 超出这个范围会存在内存溢出

强制类型转换:(类型)+变量名 强制体现在高精度类型转换到低类型

自动类型转换:一般由低->高

注意点: 1.不能对布尔类型转换

​ 2.不能把对象转换为不相干的类型

​ 3.在把高容量转换到低容量的时候,强制转换

​ 4.注意内存溢出或者精度问题

​ 5.操作比较大的数的时候,注意溢出问题

jdk7 中,数字中间可以加下划线,便于区分:

​ 100000000可以写成 1_0000_0000

精度问题:

int money = 10_0000_0000;
int year = 20;
int total1 = money*year;//存在溢出问题
long total2 = money*year;//仍然存在溢出问题
long total3 = money*(long)year);//结果能正常输出

原因在于,money*year属于两个int运算,结果还是属于int,计算出的值再赋予long类型的变量total2,仍然存在溢出问题,而先将其做类型转换后,再运算,得到的值是long类型,就不会存在溢出问题。


3.变量

Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。

在定义变量时,尽量避免 int a=0,b=1,c=2;这种类型的赋值,会降低程序的可读性。

变量的作用域

类变量:static int a=0;

实例变量: String s=“hello”;

局部变量:写在方法里的变量;

变量的命名规范

遵循驼峰原则

类成员变量:首字母小写其他单词首字母大写

局部变量:首字母小写+驼峰原则

常量:大写字母和下划线

类名:首字母大写和驼峰原则

方法名:首字母小写+驼峰原则


4.字符串的连接

System.out.println(""+15+30);
System.out.println(15+30+"");

这两句输出的含义时不一样的,前者输出1530,后者输出45;因为在处理字符串的链接时,如果出现String类型的,后面都会转换为String类型加在一起,而String出现在后者的后面,所以先计算15+30,细节需要注意。

5.JavaDoc命令

javadoc命令可以用来生成自己的API文档,其中包括的参数信息如下: @author 作者

​ @version 版本号

​ @since 指明最早用的jdk版本

​ @param 参数名

​ @return 返回值

​ @throws 异常情况

在使用javadoc命令时,可以在cmd输入:

javadoc -encoding UTF-8 -charset UTF-8

这样可以在生成的API文档中,可以避免因为编码问题出现的中文乱码。


6.Scanner类 部分细节

Scanner类属于IO流,应当在每次使用完后关闭掉,具体方法如下:

Scanner scanner =new Scanner(System.in);//调用

scanner.close();//关闭

如果不关闭,会一直占用资源。

Scanner.hasNext 方法,判断是否有下一个输入。

scanner.hasNextInt 是否有下一个整数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值