第一次学java,环境变量就配置了好久,哭死

  • IDEA使用的一些小插曲
  • 与C语言雷同的一些基础部分
  • 注释
  • 标识符与关键字
  • 数据类型
  • a.基本类型
  • b.引用类型
  • 数据类型的一些扩展事项
  • 变量
  • 作用域
  • 常量
  • 运算符
  • Math类

IDEA使用的一些小插曲

1.文字字体设置(File->settings->editor->color scheme->java)
注意右边的inherit values from要去掉勾。

java 新手练习 java入门新手教程_java 新手练习

2.project structure的设置:

java 新手练习 java入门新手教程_java_02


首先:File->project structure->project->SDK调成i.8(根据下载版本确定,反正不要是红色的No SDK就行)

其次:language level要设置成我们下载版本对应的级别,我这里是8。

改完之后要点击apply和OK才能保存更改,不要忘记。

与C语言雷同的一些基础部分

注释

1.单行注释:两个斜杠//, 和C一样。

2.多行注释:/**/,和C一样(快捷方式:/*+回车键)

3.文档注释:

java 新手练习 java入门新手教程_java 新手练习_03


如图,每一行都有一个星号,星号后面用于写参数。(快捷方式:杠+星+星+回车)

java 新手练习 java入门新手教程_作用域_04


有一点区别:如上图,加在类(class)上面的是类的注释,加在方法(method)上面的是方法的注释


标识符与关键字

java 新手练习 java入门新手教程_开发语言_05

上图包含了java的一些常见关键字。

类名:class 后面的名字,如public class helloworld中的helloworld。

变量名:变量的名称,如int n中的n。

方法名,如public static void main()里面的main。

注意:
1.所有标识符都必须以字母(大小写均可),$美元符号,或者下划线_开头

2.首字符之后可以用字母, $美元符号,下划线_或者数字任意组合

3.不能使用关键字作为变量名、方法名或类名

4.标识符是大小写敏感的(区分大小写,比如如n和N是两个变量)

5.String不是关键词!!!!!!!!

数据类型

a.基本类型

1.整数类型:

名称

空间大小/字节

范围

byte

1

-128~127

short

2

-32768~32767

int

4

-2147483648~2147483647

long

8

-9223372036854775808~9223372036854775807

2.浮点类型

名称

空间大小/字节

float

4

double

8

3.字符类型
char 类型,占两个字节

4.Boolean类型
只有true和false两种类型,占一个字节


注意在声明long的时候要加一个L以示区分,比如long x=1000000L,其实用小写l也行,但为了避免与1混淆,用大写更佳。
类似地,我们在声明float的时候,为了和double区分,要在数字后面加一个f或F。但是long不加L不会报错,F不加会报错。
还有一点,在运算过程中如果有自己写的常数,如123134543544435,默认为Int 类型,如果超过了int,要在其最后加上L。

b.引用类型

1.类
2.接口
3.数组

数据类型的一些扩展事项

1.二进制:0b开头,如0b10是2(千万小心是零b不是欧b)

2.八进制:0开头,同上。

3.十六进制:0x开头,同上。

4.float和double类型不要直接比较==,否则会因为精度问题或者显示长度产生错误,最好完全避免浮点数的比较。(剧透,用BigDecimal类可以解决一些浮点问题)

5.println()一个char类型的量,如果不强制转换为int,则输出char对应的字符,反之输出unicode或者ASC编码中的数值。char 的本质是整数类型,以数字形式储存

6.注意下图中的char c=‘\u0061’。unicode是16进制的(0~65535),\u就是转义后面的4位16进制的数字为字符,'a’对应97(0x61)。

java 新手练习 java入门新手教程_作用域_06


7.其他转义字符:\t,\n.

8.类型转换:

java 新手练习 java入门新手教程_java_07


运算时按从低到高自动转换,与语言相同,但是在加减乘中如果有Long则最终为long, 反之则默认为int。

强制转换和c一样,如:

int a=128;
byte b=0;
b=(byte)a;
这个例子里面b=-128,因为溢出了.

警告:不能对Boolean类型进行转换,也不能转化为不相干的类型注意:+如果连接的一端是String类型,则功能为字符串连接符,把其他的变量都转化为字符串,如下图

java 新手练习 java入门新手教程_java_08

9.JDK7新特性,数字可以用_隔开,对结果不影响。如int num=100_000_000;

10.注意,如下图,total2=money*years;money和years先计算产生int类型的值但是溢出,在转换成long,还是溢出的,所以不行。解决办法是对money或year先进行强制转换。

java 新手练习 java入门新手教程_数据类型_09

变量

java是一种强类型语言,先定义变量后才能使用
要素:
1.变量名
2.变量类型
3.作用域

作用域

java 新手练习 java入门新手教程_数据类型_10


1.局部变量在方法内部,必须声明和初始化值。

2.实例变量在class里面,方法外面;是从属于对象的,不用初始化,若
不初始化int的默认值为0,布尔类型默认为false,除了基本类型其他默认值为null。

3.类变量位置和实例变量一样,但是前面加了static,作用域和类共存亡

常量

final double pi=3.14;
这里final相当于C语言的const,如果要加static,放在final的前面或后面都可以
原因:修饰符不区分前后

下图了解即可

java 新手练习 java入门新手教程_java 新手练习_11

运算符

关系运算符返回布尔值,其余与C相同
&&符号遇到0则短路,比如c!=0&&d++==0,如果c=0,则后面d++不执行
同样地,||遇到1短路

Math类

相当于#includec<math.h>

double a=Math.pow(3,2);