JAVA语言基础

  • 一、JAVA主类结构
  • 1、包声明
  • 2、声明成员变量和局部变量
  • 3、编写主方法
  • 4、导入APl类库
  • 二、基本数据类型
  • 1、整型类型
  • 2、浮点型
  • 3、字符类型
  • 4、布尔类型
  • 三、变量与常量
  • 1、标识符和关键字
  • 2、声明变量与常量
  • 3、变量的有效范围
  • 四、运算符
  • 1、赋值运算符
  • 2、算术运算符
  • 3、自增自减运算符
  • 4、比较运算符
  • 5、逻辑运算符
  • 6、位运算符
  • 7、三元运算符
  • 8、运算符的优先级
  • 五、数据类型转换
  • 1、隐式类型转换
  • 2、显式类型转换


一、JAVA主类结构

package 第一节;//包
public class 例1 {//类
      static String s1="hello";
      public static void main(String[]args) {//主函数
		String s2="word";
		System.out.println(s1);
		System.out.printf(s2);
	}
}

1、包声明

一个JAVA应用程序是由若干个类组成的,例如以上代码类名例1 包的语句是package 第一节;表示这个类在第一节包的下面

2、声明成员变量和局部变量

通常将类的属性称为类的全局变量,将方法中的属性称为局部变量,例如代码中static String s1="hello";s1为全局变量,在主函数里的String s2="word";为局部变量。

3、编写主方法

main()方法是类体中的主方法,public static void main(String[]args)分别是权限修饰符、静态修饰符和返回修饰符,加上一个字符串类型和数组,即main()方法的参数

4、导入APl类库

JAVA语言通过import关键字导入相关的类。例如import java.io.*;

二、基本数据类型

1、整型类型

和C语言的基本一样不懂的话可以看我往期博客往期博客

//整数型
package 第一节;
public class 例2 {
	public static void main(String[]arge) {
		   byte x=123;
		   int y=234;
		   short l=1123;
		   long w=x+y+l;
		   System.out.print("结果为:"+w);   
	}

}

2、浮点型

数据类型

内存空间(8位=1字节)

取值范围

float

32位

1.4E~3.4028235E38

double

64位

4.9E-324~1.7976931348623157E308

浮点型定义如下:

float f1=13.23f;
double  d1=4562.12d;
double d2=45678.1564;

3、字符类型

(1)char型
用于存储单个字符,占用16位的内存空间。和C语言一样

//字符型
package 第二节;
public class 例3 {
    public static void main(String[]arge) {
    	char x='d',y='@';
    	int p=23045,p2=234556;
    	System.out.println("char的类型的x转换成int类型是多大:"+(int)x);
    	System.out.println("int类型的p转换成char的类型是多少:"+(char)p);
    	System.out.println("x+y转换成int是多大:"+(int)(x+y));
		System.out.println("p+p2转换成char型的是多大:"+(char)(p+p2));
	}
}

(2)转椅字符
它以反斜杠“\”开头,后跟一个或多个字符。

转义字符

含义

\ddd

1~3位八进制数据所表示的字符,如\123

\uxxxx

4位十六进制数据所表示的字符,如\u0052

\’

单引号字符

\\

反斜杠字符

\t

垂直制表符,将光标移到下一个制表的位置

\n

换行

\r

回车

\b

退格

\f

换页

转义字符使用如下

char c1='\\';
char char1='\u2605';

4、布尔类型

布尔类型又称为逻辑类型,通过关键字booleam类定义布尔类型变量,只有true和false两个值。代码如下

boolean b;
boolean b1,b2;
boolean b=true;

三、变量与常量

1、标识符和关键字

(1)标识符
标识符可以理解为一个名字,用来标识类名,变量名、方法名、数组名、文件名的有效字符java语言规定标识符必须由字母、下划线、$和数字组成,并且第一个字符不能是数字。标识符不能是JAVA中的关键字
(2)关键字

int

public

this

finally

boolean

abstract

continue

float

long

short

throw

throws

return

break

for

static

new

interface

if

goto

default

byte

do

switch

strictfp

package

super

void

try

case

else

catch

implements

private

final

class

extends

volatile

while

synchronized

instanceof

char

protected

import

transient

dafault

double

2、声明变量与常量

//声明变量与常量
package 第三节;
public class 例4 {
   static final double  p1=3.14;//声明常量
   static int age=32;//声明变量
   public static void main(String[]arge) {
	final int x;
	x=1335;
	age=85;
	System.out.println("p1为:"+p1);
	System.out.println("x+age等于:"+(x+age));
    }
}

3、变量的有效范围

  • 成员变量在类体中所定义的变量被称为成员变量
  • 局部变量在类方法体中定义的变量。
//成员、局部变量
package 第三节;
public class 例5 {
    static int time=3;//成员变量
    public static void main(String[]arge) {
		int time=7;//局部变量
		System.out.println("time的值为:"+time);
	}
}

四、运算符

1、赋值运算符

和C语言定义的一样

//赋值运算符
package 第四节;
public class 例6 {
   public static void main(String [] arge) {
	int x=3,y=4;
	long l;
	l=x/2+y;
	System.out.printf("l的值为:%d", (l+y)/x);
   }
}

2、算术运算符

和C语言的一样 C语言的运算符

//算术运算符
package 第四节;
public class 例7 {
    public static void main(String[]arge) {
		int x=5,y=5;
		System.out.printf("和:%d", x+y);
		System.out.printf("\n积:%d", x*y);
		System.out.printf("\n商:%f", (float)(x/y));
		System.out.printf("\n差:%d", x-y);
	}
}

3、自增自减运算符

和C语言的一样 C语言的运算符

//自增和自减运算符
package 第四节;
public class 例8 {
  public static void main(String[]args) {
	  int x=9,y=10;
	  System.out.println("自增x:"+(x++));
	  System.out.println("自减y:"+(y--));
   }
}

4、比较运算符

和C语言的一样 C语言的运算符

//比较运算符
package 第四节;
public class 例8 {
  public static void main(String[]args) {
	  int x=9,y=10;
	  System.out.println("x与y是否相等:"+(x==y));
	  System.out.println("x是否大于y:"+(x>y));
   }
}

5、逻辑运算符

和C语言的一样 C语言的运算符 结果为boolean型的变量或表达式可以通过逻辑运算符组合为逻辑表达式

//逻辑运算
package 第四节;
public class 例9 {
  public static void main(String[]args) {
	 int x=3,y=4;
	 System.out.println("执行(x>y)&&(x<y)与运算:"+((x>y)&&(x<y)));
	 System.out.println("执行(x>y)||(x<y)或运算:"+((x>y)||(x<y)));
    }
}

6、位运算符

(1)“按位与”运算
“按位与”运算的运算符为“&”,为双目运算符 a&b a=b则位为1,否则则为0
(2)“按位或”运算
“按位或”运算的运算符为“|”,为双目运算符a|b a=b则位为0,否则为1。
(3)“按位取反”运算
“按位取反”运算称为“按位非”运算,运算符为“~”,为单目运算符,将操作数二进制中的1修改为0,0改为1
(4)“按位异或”运算
“按位异或”运算的运算符是“^”,为双目运算符。当两个操作数的二进制表示相同时。结果为0,否则为1.
(5)移位操作
除了上述运算之外,还可以对数据按二进制位进行移位操作:
<<:左移
“>>”:右移
“>>>”:无符号右移

7、三元运算符

格式为
条件?值1:值2

boolean b=20<45?true:false;

8、运算符的优先级

和C语言的一样 C语言的运算符

五、数据类型转换

1、隐式类型转换

从低级类型向高级类型转换
隐式类型转换规则:

操作数1的数据类型

操作数2的数据类型

转换后的数据类型

byte、short、char

int

int

byte、short、char、int

long

long

byte、short、char、int、long

float

float

byte·、short、char、int、long、float

double

double

//隐式类型转换
package 第五节;
public class 例10 {
   public static void  main(String[]args) {
	  byte x=127;
	  int y=150;
	  float l=452.12f;
	  char u=10;
     double c=45.46546;
     System.out.println("x+l="+(x+l));
     System.out.println("x*y="+(x*y));
     System.out.println("x/u="+(x/u));
     System.out.println("c+u="+(c+u));
    }
}

2、显式类型转换

(类型名)要转换的值

//显式类型转换
package 第五节;
public class 例11 {
   public static void  main(String[]agrs) {
	    int x=(int)89.3;
	    float y=(long)48.63;
	    int l=100;
	    System.out.println("x:"+x);
	    System.out.println("y:"+y);
	    System.out.println("l:"+(char)l);
    }
}