Day2 java基础
注释、标识符、关键字
注释
-
单行注释 //
-
多行注释 /* */
-
文档注释 /** @Author */
标识符
-
A-Z a-z $ _开头
-
标识符取法与c++一致
数据类型
-
与c++一致,强类型语言
-
分为两大类数据类型
-
基本类型
-
byte:1个字节
-
short:2个字节
-
int:4个字节
-
long:8个字节,long类型要在数字加个L
-
float:4个字节,float类型要在数字后加个F
-
double:8个字节
-
char:2个字节(与c++不同)
-
boolean:1字节
-
注:与c++一样,double和float存在精度问题,做判断时应注意
-
浮点数是一个有限离散的数,存在舍入误差
-
可以利用BigDecimal类来做
-
-
-
引用类型
-
类
-
接口
-
数组
-
-
类型转换
-
强制类型转换
-
与c++一致
-
从高字节转为低字节
-
-
自动类型转换
-
byte,short,char ——> int ——> long ——> float ——> double
-
-
转换的时候都可能出现溢出或者精度问题
变量、常量
-
变量分为类变量、实例变量、局部变量
-
类变量:在类当中声明的变量 要加static的关键字,类似于c++的静态成员变量
-
实例变量:从属于对象,不需要初始化,类似于c++的成员变量
-
局部变量:类中使用的局部变量,局部变量如果需要输出则必须进行初始化
-
-
常量:
-
用final关键字:类似于c++中的const
-
-
命名规范
-
均采取驼峰制
-
常量全大写中间用_:MAX_VALUE
-
类名首字母大写,其余首字母小写
-
运算符
-
与c++一致
-
多了一个instanceof,判断某个对象是否属于一个类
-
有一个Math类,可以用来大部分数学运算
包机制、javaDoc
包机制
-
有点类似于c++的命名空间
-
一般利用公司域名倒置作为包名:例如com.baidu.www
-
在.java文件开头,会有package com.baidu.www这一句,表示该.java代码属于哪个包
-
导入包
-
import java.util.Date;
-
Java.lang默认导入
-
-
尽量不要让包当中的命名重复
-
每一个包的编译单元文件(.java文件)中,只能有一个public类,其他类只能作为public类的辅助类存在
javaDoc
-
javaDoc用来生成自己API文档
-
参数信息
-
@author:作者名
-
@version:版本号
-
@since:指明需要最早使用的jdk版本
-
@param:参数名
-
@return:返回值情况
-
@throws:异常抛出情况
-
-
javaDoc命令:
javadoc -encoding UTF-8 -charset UTF-8 xxx.java
会生成一份文档供阅读
用户交互Scanner
-
实现用户输入
-
Scanner对象接口:hasNext(), hasNextLine(), next(), nextLine();
-
用完Scanner之后,注意回收,调用close()
-
next()方法读取到空白字符(空格或者回车)就停止, nextLine()方法遇到回车才停止
-
如果用nextInt()来读取,而输入的不是int,缓冲区内的内容不会被读取
import java.util.Scanner;
public class PracticeScanner {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
if (scanner.hasNext()) {
String str = scanner.next();
System.out.println("out string is " + str);
}
scanner.close();
}
}
选择结构
-
if else
-
switch:case穿透现象仍与c++一样
-
javaSE 7开始:switch可以比较字符串了
循环结构
-
与c++一样
break && continue
-
无goto,可以用标签
public class PracticeWhile {
public static void main(String[] args) {
outer:for (int i = 0; i < 10; i++) {
for (int j = 0; j <= i; j++) {
int res = (i + 1) * (j + 1);
if (res % 5 == 0) {
continue outer;
}
}
System.out.print("\n");
}
}
}

浙公网安备 33010602011771号