这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。
一、HelloWorld说明
package com.test.hello;//包的声明
//package定义包的关键字 包的名字 结束符
public class HelloWorld {//定义类
//公共的(作为类的修饰符) class定义类的关键字 类的名字
public static void main(String[] args) {
/*定义一个main方法
公共的(作为方法的修饰符) 静态的 没有返回值 方法名
() 方法的标志 */
//String[] args:方法的参数(参数的类型 参数的名字)
System.out.println("123");//输出指定的内容
System.out.println("123");
System.out.println("123");
System.out.println("123");
}
}
二、前言
2.1 标识符
- 可以简单的理解为一个名字。在Java中,我们需要标识代码的很多元素,包括类名、方法、字段、变量、 包名等。我们选择的名称就称为标识符,并且遵循以下规则:
- 标识符可以由字母、数字、下划线(_)、美元符($)组成,但不能包含 @、%、空格等其它特殊字符。
- Abc1 ab
- 不能以数字开头。譬如:123name 就是不合法;
- 标识符是严格区分大小写的。 所以一定要分清楚 imooc 和 IMooc 是两个不同的标识符。
- 标识符的命名最好能反映出其作用,做到见名知意。
2.2 关键字
关键字时在
java
语言中,已经被赋予特定意义的一些单词。他们不能被用作标识符如:
class package static public void int ……
2.3变量
在
JAVA
中,有的数据值是不固定的,总在变,我们还需要记录这些值,我们可以把这些值理解为变量。
我们通过三个元素来描述变量:变量类型 变量名以及变量值。
int age = 18; //
声明
int
类型的变量并赋值
String tel ; //
声明
String
类型的变量
注意:
1
、 变量名必须是一个有效的标识符
1sfa a??b
。
2
、 变量名不可以使用
java
关键字
3
、 变量名不能重复
2.4常量
在程序运行过程中一致不会改变的量成为常量。
三、数据类型
3.1基本类型(八种)
3.1.1介绍
3.1.2练习:最大值、最小值
package 基本数据类型1;
public class Test1_最大值最小值 {
public static void main(String[] args) {
//整数类型的取值范围
//变量类型 变量名称 变量值
byte b1=-128;//定义byte类型的变量并赋值
byte b2=127;
short b3=Short.MIN_VALUE;
short b4=Short.MAX_VALUE;
int b5=Integer.MIN_VALUE;
int b6=Integer.MAX_VALUE;
long b7=Long.MIN_VALUE;
long b8=Long.MAX_VALUE;
float b9=Float.MIN_VALUE;
float b10=Float.MAX_VALUE;
double b11=Double.MIN_VALUE;
double b12=Double.MAX_VALUE;
//打印
System.out.println(b1);
System.out.println(b2);
System.out.println(b3);
System.out.println(b4);
System.out.println(b5);
System.out.println(b6);
System.out.println(b7);
System.out.println(b8);
System.out.println(b9);
System.out.println(b10);
System.out.println(b11);
System.out.println(b12);
//字符型
char b13='a';
char b14=97;
char b15='b';
char b16=98;
System.out.println(b13);
System.out.println(b14);
System.out.println(b15);
System.out.println(b16);
}
}
3.1.4练习:输入个人信息
package 基本数据类型1;
//Ann今年19岁,月薪1000000.99,java是世界上最好的语言。
public class Test2_输入个人信息 {
public static void main(String[] args) {
String name="Ann";
int age=19;
double salary=1000000.99;
String str =
name+"今年"+age+"岁,月薪"+salary+",java是世界上最好的语言。";
System.out.println(str);
} }
3.1.4练习:圆形面积
圆的面积:π*r*r
圆的周长:2*π*r
package 基本数据类型1;
import java.util.Scanner;//导入基本类库
public class Test3_圆的面积 {
public static void main(String[] args) {
System.out.println("请您输入数据:");
int r=new Scanner(System.in).nextInt();//定义圆的半径
System.out.println(3.14*r*r);//π*r*r
System.out.println(3.14*2*r);//π*2*r
//姓名:张三(接收键盘输入)
String name=new Scanner(System.in).nextLine();
System.out.println("姓名:"+name);
//接收键盘输入的年龄并打印
int age =new Scanner(System.in).nextInt();
System.out.println(age);
} }
3.1.5练习:变量交换
接收用户输入的值:假设a=1,b=2,将a和b的值做交换。
package 基本数据类型1;
import java.util.Scanner;
public class Test4_变量交换 {
public static void main(String[] args) {
//接收用户输入的值a
System.out.println("请您输入a:");
int a = new Scanner(System.in).nextInt();
//接收用户输入的值b
System.out.println("请您输入b:");
int b = new Scanner(System.in).nextInt();
//交换a和b的值
int t=a;//赋值运算是从右到做
a=b;
b=t;
System.out.println(a);
System.out.println(b);
} }
3.2引用类型(略,后续介绍)
四、基本类型字面值(5条)
4.1整数字面值是int类型
int x = 99999999999;//
错,右面的数据字面值是
int
类型,但是已经超出
int
的取值范围。
4.2byte,short,char三种比int小的整数可以用范围内的值直接赋值
byte b1=127;//
对,
byte b2=128;//
错,超出
byte
范围
4.3浮点数的字面值是double类型
double r =3.14;//
对
float r =3.14;//
错,右面的数据字面值是
double
,
float
是
4
字节存不下
double
类型的数据
4.4字面值后缀L D F
long x = 99999999999l;//long
类型的数据
float r =3.14f;//float
类型的数据
double b=3.0/3d
字面值是
int
类型,
double
可以存的下。
4.5进制前缀
010101010010010101010101010101010
0x - 16
进制
-8
进制只有三位
\u -char
类型,
16
进制
—unicode
编码
…
五、运算规则
5.1计算结果的数据类型,与最大类型一致
3/2 int/int
得到还是
int
类型的数据,得
1
。
3d/2 得到1.5,double/int最后还是double
5.2byte,short,char三种比int小的整数,运算时会先自动转换成 int
byte a=2;
byte b=3;
byte c=a+b;//
错,右面
int+int
结果还是
int
,存不下。
5.3整数运算溢出
整数运算,类似于一个钟表,转到最大时,再转会回到最小
//
统计一年光速能运行多少米
System.
out
.println(300000000l*60*60*24*365);
5.4浮点数运算不精确
1-0.9
4.35*100
解决方案:利用
Math
工具类完成
5.5浮点数的特殊值
Infinity 无穷大
System.
out
.println(3.14/0);
Nan not a number
六、基本类型的转换
6.1 小到大
byte b1=120;
int b2=b1;
6.2 大到小
需要强制类型转换
int
x
=3;
byte
y
=(
byte
)
x
;
6.3 浮点数转成整数,小数直接舍弃
不管0.1还是0.9全都舍弃。