Java学习问题记录
Posted 千山淼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java学习问题记录相关的知识,希望对你有一定的参考价值。
1.特殊基本数据类型
除了这两个,其他的变量都不需要加符号
//定义时需要在变量的值后面加 L或l
long count=300000L;
//定义时需要在变量的值后面加 f或F
float code=10.3f;
2.常量定义
//在 Java 中使用 final 关键字来修饰常量,声明方式和变量类似:(通常使用大写字母表示常量)
final double PI = 3.1415927;
//定义一个静态常量
public static final String DEPARTMENT = "开发部";
3.字符型字面值char
char只能使用单引号
//char只能使用单引号
char a=\'$\';
4.类型转换(java中)
取值范围大的类型要转换范围小的类型,只能强制转换;
取值范围小的类型要转换范围大的类型,能自动隐式转换。
(取值范围从小到大排序,从后往前都需要强制转换,逗号之间也需要强制转换:byte,char,short<int<long<float<double)
//int转byte需要强制转换
int num = 127;
//byte bs = num; //wrong
byte bs = (byte)num; //correct
System.out.println(bs);
5.精度丢失
double和float小数点相加都会有精度丢失的问题
//double精度丢失
double dnum1=1.01;
double dnum2=2.01;
double dnum3=dnum1+dnum2;
System.out.println("double计算结果 = " + dnum3); //double计算结果 = 3.0199999999999996
//float精度丢失
float fnum1=1.1f;
float fnum2=2.000001f;
float fnum3=fnum1+fnum2;
System.out.println("float计算结果 = " + fnum3); //float计算结果 = 3.1000009
//BigDecimal保持精度
BigDecimal bnum1 = new BigDecimal(String.valueOf(1.1f)); //必须传字符串类型的参数
BigDecimal bnum2 = new BigDecimal(String.valueOf(2.000001f));
BigDecimal bnum3 = bnum1.add(bnum2);
System.out.println("BigDecimal计算结果 = " + bnum3); //BigDecimal计算结果 = 3.100001
java 学习记录
在本周,我学习了一下java基础的一些相关知识,有Java的数据类型、变量与常量、运算符与表达式,以及选择语句知识的学习,最后还有循环语句的学习。在本周的学习过程中,遇到了许多问题。学习进度明显跟不上老师的节奏,思维逻辑转变较慢,接受新知识需要时间,明显落下了很多功课。我很努力,但就是对很多东西理解不了,这是让我很苦恼的一件事情。每天尝试着变换各种学习办法,但是效率不高,没有太多的转变。我想只有挤时间从头开始把每一个知识点重新多过几次试一下吧。
以上是关于Java学习问题记录的主要内容,如果未能解决你的问题,请参考以下文章
Java基础学习总结(182)——Java 日志记录实践总结