Java学习1——Java语言基础知识

1 Java的特性

1、面向对象
2、安全性
3、操作平台无关性
4、多线程
5、内存管理

2 基本数据类型和表达式

2.1 常量和变量

java是一种强类型语言,所有的变量在使用前必须定义或声明,所有的变量必须具有确定的数据类型
变量声明

数据类型  变量名 [ = 初值 ] [ , 变量名 [ = 初值]...]

变量声明语句前加上final修饰符,就声明了一个常量
变量声明

final    数据类型  变量名 [ = 初值 ] [ , 变量名 [ = 初值]...]

2.2 数据类型

2.2.1 基本数据类型

字符型

逃逸字符
反斜杠\开头

字符 意义 字符 意义
\b 回退一格 \" 双引号
\t 到下一个表格位 \' 单引号
\n 换行 \\ 反斜杠本身
\r 回车 \f 进纸

2.2.2 引用数据类型

2.2.3 类型转换

2.2.4 包裹类型

对于基本数据类型,Java提供了对应的包裹(wrap)类型。这些包裹类型将一个基本数据类型的数据转换成对象的形式,从而使得它们可以像对象一样参与运算和传递。

基础类型 包裹类型
boolean Boolean
char Character
int Integer
double Double
Interger k=10;
System.out.println(Integer.MAX_VALUE);  //获得类型的最大值
System.out.println(Integer.MIN_VALUE);  //获得类型的最小值

2.3 运算符优先级

Java学习1——Java语言基础知识_第1张图片
关系运算符优先级

2.4 数组

2.4.1 数组的定义

数组是一种容器,其中所有元素具有相同类型,一旦创建不能改变大小

<数组类型>    数组名[ ];
<数组类型>[]    数组名;
<数组类型>[] <名字>=new <数组类型>[元素个数]

2.4.2 数组的使用

1、元素个数必须是整数
2、元素个数必须给出
3、元素个数可以是变量
4、每个数组内有一个内部成员length,记录元素的数量
5、数组变量:
数组变量是数组的管理者而不是数组本身
数组变量之前的赋值时管理权限的赋予

2.4.3 二维数组

二维数组类似矩阵
二维数组的length为行数
二维数组的初始化

int[][] a={
  {1,2,3,4},
  {1,2,3},
};  //每行一个{},逗号分隔
int[][] number = new int[SIZE][SIZE];

3 字符串

String s = new String("a string");  //创建一个String的对象,用"a string"初始化这个对象
String s = "hello";

用+做连接
输入字符串

in.next();  //读入一个单词,单词的标志是空格,空格包含空格、tab和换行
in.nextLine();  //读入一整行
  • Strings应使用.equals方法来比较
    s1.compareTo(s2) 比较两个字符串的大小
    compareToIngoreCase() 不区分大小写比较
  • 访问String里的字符
    s.charAt(index)
    但是不能用for-each循环遍历字符串
  • 得到子串
    s.substring(n) 得到从n号位置到末尾的全部内容
    s.substring(b,e) 得到从b号位置到e号位置的全部内容
  • 寻找字符
    s.indexOf(c) 得到c字符所在的位置,-1表示不存在
    s.indexOf(c,n) 从n号位置开始寻找c字符所在的位置
    s.indexOf(t) 找到字符串t所在的位置
    s.lastIndexOf(c) 从右边开始找
  • 其他String操作
    s.startsWith(t) 是否以字符串t开头
    s.endsWith(t) 是否以字符串t结尾
    s.trim() 把字符串两端的空格删掉
    s.replace(c1,c2) 把字符串中所有的c1都换成c2
    s.toLowerCase() 整个字符串小写
    s.toUpperCase() 整个字符串大写
    注意:以上操作都无法改变字符串自己,而是产生新字符串,例如
    String s2=s1.toUpperCase();
  • switch-case中也可以使用字符串(java1.7及以上)

4 函数

  • public static 公共的静态方法,是类方法
    加static的成员是类成员,可以由类直接调用,为所有对象共有
  • 当函数期望的参数类型比调用函数时给的值得类型宽时,编译器会自动转换类型
    char->int->double
  • 函数参数表中得参数:形式参数,调用函数时给的值:实际参数
  • 本地变量定义在块内
    可以定义在函数的块内,也可以定义在语句的块内,甚至任意的一对大括号内
    程序运行进入这个块之前,其中的变量不存在,离开这个块后,其中的变量消失

5 Math类

  • 提供基本的数学操作
Math.random();  //产生范围为[0,1)的浮点数
Math.abs(-12);  //绝对值
Math.pow(2, 3.2);  //求幂
Math.round(10.345);  //四舍五入

6 Eclipse

alt+/ 关键字联想快捷键
ctrl+/ 注释
选中多行tab键整体右移

你可能感兴趣的:(Java学习1——Java语言基础知识)