java基础语法
1、注释、标识符、关键字
-
当代码复杂时,我们就需要使用注释,以使自己或他人能够看懂
-
注释不会被执行,是给我们看的
-
书写注释是一个好习惯
-
注意规范
-
java中有三种注释
- 单行注释
//注释
- 多行注释
/*注释*/
- 文档注释
/** 注释 */ public class Hello { public static void main(String[] args) { System.out.println("hello world!"); /* 多行注释 */ //javaDoc:文档注释 /** */ /** * @Description Helo World! * @Author sdg */ } }
-
有趣的代码注释
/***
* ┌─┐ ┌─┐
* ┌──┘ ┴───────┘ ┴──┐
* │ │
* │ ─── │
* │ ─┬┘ └┬─ │
* │ │
* │ ─┴─ │
* │ │
* └───┐ ┌───┘
* │ │
* │ │
* │ │
* │ └──────────────┐
* │ │
* │ ├─┐
* │ ┌─┘
* │ │
* └─┐ ┐ ┌───────┬──┐ ┌──┘
* │ ─┤ ─┤ │ ─┤ ─┤
* └──┴──┘ └──┴──┘
* 神兽保佑
* 代码无BUG!
*/
/*
quu..__
$$$b `---.__
"$$b `--. ___.---uuudP
`$$b `.__.------.__ __.---' $$$$" .
"$b -' `-.-' $$$" .'|
". d$" _.' |
`. / ..." .' |
`./ ..::-' _.' |
/ .:::-' .-' .'
: ::''\ _.' |
.' .-. .-. `. .' |
: /'$$| .@"$\ `. .' _.-'
.'|$u$$| |$$,$$| | < _.-'
| `:$$:' :$$$$$: `. `. .-'
: `"--' | `-. \
:##. == .###. `. `. `\
|##: :###: | > >
|#' `..'`..' `###' x: / /
\ xXX| / ./
\ xXXX'| / ./
/`-. `. / /
: `- ..........., | / .'
| ``:::::::' . |< `.
| ```| x| \ `.:``.
| .' /' xXX| `:`M`M':.
| | ; /:' xXXX'| -'MMMMM:'
`. .' : /:' |-'MMMM.-'
| | .' /' .'MMM.-'
`'`' : ,' |MMM<
| `' |tbap\
\ :MM.-'
\ | .''
\. `. /
/ .:::::::.. : /
| .:::::::::::`. /
| .:::------------\ /
/ .'' >::' /
`',: : .'
`:.:'
*/
标识符
关键字
abstract assert boolean break byte case catch char class const continue
default do double else enum extends final finally float for goto if
implements import native instanceof int interface long new package
private protected public return strictfp short static super switch
synchronized this throw throws transient try void volatile while
标识符命名规则
1、标识符用作给变量、方法和类命名。
2、以字母、下划线“_”和“\(”符开头,后面可跟字母、下划线“_”和“\)”符或数字。
3、大小写敏感。
4、应该使用有意义的名称,达到见名知意的目的,并且长度无限制。
5、尽量不要使用中文。
6、不可以是true和false。true和false虽然不是关键字,但是有特殊用途。
7、避免与java关键字与java类库的类名重名
不同标识符使用不同的命名规则
1、包名:全部小写. 用”.”隔开,每一个点表示一级目录,至少要有一级目录。
(1) 单级包:小写。如:com
(2) 多级包:小写,用”.”隔开。如:java.javac.javaclass
2、类或接口:所有单词首字母大写。(大驼峰法)
(1) 一个单词:首字母大写。如:Student、People
(2) 多个单词:每个单词首字母大写。如:HelloWorld
3、方法或变量:第一个单词首字母小写,从第二个单词开始首字母大写。(小驼峰法)
(1) 一个单词:首字母小写。如:name、age
(2) 多个单词:第二个单词首字母大写。如:studentName、eatTime
4、常量:全部大写,单词键以下划线”_”隔开
(1) 一个单词:全大写。如:PI、COUNT
(2) 多个单词:全大写,并以”_”隔开。如:COUNT _ AB
2、数据类型
强类型语言: 要求变量的使用要严格符合标准,所有变量都必须先定义后才能使用
弱类型语言 : js
java的数据类型分为两大类
- 引用类型:类,接口,数组(除基本类型外的类型)
- 基本类型:
- 数值类型:byte,short ,int,long 1字节,2字节,4字节,8字节
- 浮点类型:float,double 4字节,8字节
- 字符类型:char 2字节
- boolean类型:占1字节,只有true和false两个
public class Hello {
public static void main(String[] args) {
//八大基本数据类型
//整形
int num1 = 10;//最常用 +-2^31
byte num2 = 20;//+-2^7
short num3 = 30;//+-2^15
long num4 = 40L;//long类型要在数值后加L加以区分+-2^63
//小数,浮点数
float num5 = 50.1F;//float类型要在后加F加以区分
double num6 = 60.22143245456;
//字符
char name = '桑';//单引号,且只能有一个字符,可为汉字
//字符串,双引号,内可有很多字符包括汉字
String name1 = "桑德国";
//布尔值,只能有两个值 true或false
boolean flag = true;
boolean flag1 = false;
}
}
bit位:101010之类的,是计算机存储的最小单位
字节Byte:是计算机处理数据的基本单位,习惯用大写B表示
1B(byte,字节) = 8 bit(位)
字符:是指计算机使用的字母、数字、符号和字
1 bit 表示一位 , 1B = 8 bit , 1024B = 1KB , 1024KB = 1M , 1024M = 1G
//进制 八进制 0 十六进制 0x 二进制 0b
int i1 = 10;
int i2 = 0b10;
int i3 = 010;
int i4 = 0x10;
System.out.println(i1);
System.out.println(i2);
System.out.println(i3);
System.out.println(i4);
/*
10
2
8
16
*/
//浮点数
//float,double有问题
//有限的,离散的 , 舍入误差,接近但不等于
//尽量不使用浮点型,使用 BigDecimal 数学工具类
float f= 0.1f;
double d = 1.0/10;
System.out.println(f==d);
float a1 = 234234543432324f;
float a2 = a1 + 1;
System.out.println(a1 == a2);
/*
false
true
*/
char c1 = 'a';
char c2 = '桑';
System.out.println(c1);
System.out.println(c2);
System.out.println((int)c1);
System.out.println((int)c2);
System.out.println('\u0061');//unicode内的编码对应的字符a
//所有的字符本质还是数字,unicode 0-65536 97 = a
//转译字符
//\t tab制表符
// \n 换行
//还有很多
System.out.println("Hello\tworld");
3、类型转换
public class Demo1 {
public static void main(String[] args) {
int i = 128;
byte b = (byte) i;//内存溢出问题
//强制转换 ,(类型)变量名 高到低
//自动转换,低转高
System.out.println(i);
System.out.println(b);
double d = i;
System.out.println(i);
/*
注意点
1、不能对bool进行转换
2、不能把对象类型转换为不想干的类型
3、把高转到低时强制转换
4、转换时可能出现内存溢出,精度问题
*/
System.out.println((int)23.7);
System.out.println((int)-45.78f);
char c = 'a';
int a = c+ 1;
System.out.println(a);
System.out.println(c);
}
}
public class Demo2 {
public static void main(String[] args) {
//操作数较大时,注意溢出问题
//jdk7,数字之间可以使用下划线分割
int money = 10_0000_0000;
int years = 20;
int total = money*years;//计算时溢出了
System.out.println(total);//-1474836480
long total1 = money*years;//默认是int,转换之前已经存在问题了
System.out.println(total1);//-1474836480
long total12 = money*(long)years;//算完后再赋值,所以应该先强制转换再赋大类型值
System.out.println(total12);//20000000000
}
}
变量
变量,可以变换的量,java每个变量必须提前声明
变量名
type varName = [=value] [{,varName[=value]}];
数据类型 变量名 = 值 ; 可以使用逗号隔开来声明多个同类型变量。
变量类型
每个变量都有类型,类型可以是基本类型,也可以是引用类型
变量名必须是合法的标识符
变量声明是一条完整的语句,因此每声明都必须以分号结束
作用域
public class Demo3 {
//修饰符不区分前后顺序
static final double PI = 3.14;
//final static double PI = 3.14;
//类变量 static,静态变量,优先加载随着类的出现而出现随着类的消失而消失
static int salary = 2500;
//实例对象
String name;//默认是Null,除了基本类型其余都是Null
int age;//默认是0 0.0,布尔值默认是false
char c;//默认不输出为Null空
public static void main(String[] args) {
//局部变量:必须声明和初始化值
int i = 10;
System.out.println(i);
Demo3 demo3 = new Demo3();
System.out.println(demo3.name);
System.out.println(demo3.age);
System.out.println(demo3.c);
System.out.println(salary);
System.out.println(PI);
}
}
常量
初始化之后不能再改变的值,再程序运行过程中不允许被改变
final 常量名 = 值;
final double PI = 3.14;
常量名一般大写
标签:java,int,基础,System,语法,类型,println,public,out From: https://www.cnblogs.com/1234sdg/p/17017190.html