目录
一.基本结构
1.class关键字
2.main方法
3.输出语句
4.转义符
二.变量和数据类型
1.什么是变量
2.变量的定义
3.定义变量
4.基本数据类型
5.引用类型
三. Math类
四.日期时间类
一个完整的Java程序,它的基本结构包括:class类、main方法、输出语句、注释
package com.apesource;
/*
* java多行注释
*/
public class Demo6 {//class定义开始
// main方法
public static void main(String[] args) {
//Java单行注释
System.out.println("Hellow,world!");
}
}//class定义结束
一个程序的基本单位就是class类,class是用于定义类的关键字
//类名是Demo1
public class Demo1{
}//定义结束
注意:
public 是访问修饰符,表示class是一个公共类 ,可以在整个项目的任意位置进行调用访问
如果不写public也能正确编译,但这个类将无法从命令行执行。
一个源文件中可以包含活干个class类,但是只能有一个类使用public,该类的名称必须与java源文件名称保持一致。
如果一个类需要直接被执行,则需要在该类中定义一个main方法。
public static void main(String[] args) {
//方法代码语句
}
方法名是main,返回值是void,表示没有任何返回值。
关键字static是另一个修饰符,表示静态方法。
括号内表示String数组,由Java入口程序规定。
Java基础语法中提供3种常见的输出语句:
System.out.print(); //输出
System.out.println(); //输出并换行
System.out.printf(); //格式化输出
\t 制表符
\n 换行符
\u 16进制编码的ASCII码
public class Demo4 {
public static void main(String[] args) {
//转义符
// \t 制表符
// \n 换行符
// \u 输出16进制编码值对应的数字
System.out.println("野原新之助\t野原新之助\n");
System.out.println("野原新之助\t野原新之助\n");
System.out.println("\u005E\u005F\u005E");
}
运行结果 :
从内存角度理解:变量是代表内存中的一个存储单元。
从作用角度理解:变量用于保存程序在运行过程中产生的临时数据。
从语法角度理解:变量是使用不同数据类型来进行定义保存数据的语法形式。
变量名的开头必须是:英文字母、下划线_、$符号。
其余部分内容可以是:英文字母、下划线_、$符号、数字。
规范的变量名以小写字母开头。
不能使用Java关键字作为变量名,例如:public、static、do、while、for、void等。
第一步:
执行 int n = 100;
执行上面代码时,首先定义了变量n,同时赋值为100。这时,JVM在内存中为变量n分配一个“存储单元”,填入值100。
第二步:
执行 int n = 200;
再执行int n = 200;时,JVM把200写入变量n的存储单元,因此原有的值被覆盖,现在n的值为200。
第三步:
执行 int x = n;
这时定义了一个新的变量x,同时对x赋值,因此JVM需要新分配一个存储单元给变量x,并写入和变量n一样的值。
第四步:
执行 x = x+100;
JVM首先计算等式右边的值x+100,结果为300,然后将300写入x的存储单元,因此变量x最终值为300。
基本数据类型是CPU可以直接进行运算的数据类型。
java中定义了以下8种基本数据类型:
数值型:
整数类型:byte(1个字节),short(2个字节),int(4个字节),long(8个字节)
浮点数类型:float(4个字节),double(8个字节)
非数值型:
字符类型:char(2个字节)
布尔类型:boolean
各种整型能表示的最大范围:
byte: -128 ~ +127
short: -32768 ~ +32768
int: -2147483648 ~ +2147483647 (-2^31 ~ +2^31-1)
long:-9223372036854775808 ~ +9223372036854775808 (-2^63 ~ +2^63-1)
除了上述8种基本数据类型以外,其余类型均为“引用数据类型”,最常见的引用数据类型是String字符串,用于保存若干个字符。
* PI:圆周率
* round:取整(四舍五入)
* random:随机数(0-1)
* paw(x,y):幂运算 x的y次方
* sqrt:平方根
public class Demo2 {
public static void main(String[] args) {
System.out.println("圆周率:"+Math.PI);
System.out.println("取整(四舍五入)"+Math.round(3.14));
System.out.println("随机数(0-1)"+Math.random());
System.out.println("幂运算"+Math.pow(2, 63 ));
System.out.println("平方根"+Math.sqrt(64));
}
}
运行结果:
public class Demo3 {
public static void main(String[] args) {
//日期时间类
System.out.println(LocalDate.now());
System.out.println(LocalTime.now());
System.out.println(LocalDateTime.now());
System.out.println("年份" + LocalDate.now().getDayOfYear());
System.out.println("月份" + LocalDate.now().getMonth());
System.out.println("月份" + LocalDate.now().getMonthValue());
System.out.println("日期" + LocalDate.now().getDayOfMonth());
System.out.println("星期" + LocalDate.now().getDayOfWeek());
System.out.println("星期" + LocalDate.now().getDayOfWeek().getValue());
}
}
运行结果: