一、java入门
1.Java入门学习框架:
2.常用的DOS命令:
dir(directory) : 列出当前目录下的文件以及文件夹
md(make directory) : 创建目录
rd(remove directory) : 删除目录
cd(change directory): 进入指定目录
cd.. : 退回到上一级目录
cd \: 退回到根目录
exit : 退出 dos 命令行
echo hello world!>a.txt
3.Java语言特点:
特点一:面向对象
两个基本概念:类、对象
三大特性:封装、继承、多态
特点二:健壮性
吸收了C/C++语言的优点,但去掉了其影响程序健壮性的部分。如:指针、内存的申请与释放等
特点三:跨平台性
跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行。
二、java基本语法
2016.8.1
教室:上午406;下午306;晚自习;306
主要内容:关键字;标识符;命名规范;变量;数据类型;运算符;分支语句;循环语句
知识脉络:
1.关键字
*定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)
*特点:关键字中所有字母都为小写
*用于定义数据类型的关键字:class interface enum byte short int long float double char boolean void
定义数据类型值:true false null
定义流程控制: if else switch case default while do for break continue return
定义访问权限修饰符:private protected public
定义类、方法、变量修饰符:abstract final static synchronized
定义类与类之间关系:extends implements
定义建立实例及引用实例、判断实例: new money this super instanceof
用于异常处理:try catch finally throw throws
用于包的关键字:package import
其他修饰符关键字。
2.标识符
*Java 对各种变量、方法和类等要素命名时使用的字符序列称为标识符
凡是自己可以起名字的地方都叫标识符。
*定义合法标识符规则:
(1)由26个英文字母大小写,数字:0-9 ,_或 $ 组成
(2)数字不可以开头。
(3)不可以使用关键字和保留字,但能包含关键字和保留字。
(4)Java中严格区分大小写,长度无限制。
(5)标识符不能包含空格。
补充:标示符是给java程序中变量、类、方法等命名的符号,标示符可以由字母、数字、下划线、美元符号组成,但不能包含@、%、空格,不能包含数字。
3.命名规范
Java中的名称命名规范:
包名:多单词组成时所有字母都小写:xxxyyyzzz
类名接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz(驼峰)
常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ
常量赋值语句:final String LOVE=”JAVA”;
final double PI=3.14;
4.变量
*变量的概念:
内存中的一个存储区域
该区域有自己的名称(变量名)和类型(数据类型)
*Java中每个变量必须先声明,后使用
该区域的数据可以在同一类型范围内不断变化
定义变量的格式:数据类型 变量名=初始化值
例:int i=0;
String love=”java”;
或:String love;
Love=”java”;
变量的作用域:一对{ }之间有效
5.数据类型
*几种数据类型赋值方法
int age=21;
double price=15.6;
float height=178.2f; ( 赋值float类型时,数值后必须加“f”)
char sex=’男’; ( ‘ ’ )
boolean flag=true;
*boolean 类型适于逻辑运算,一般用于程序流程控制:
if条件控制语句;
while循环控制语句;
do-while循环控制语句;
for循环控制语句;
boolean类型数据只允许取值true和false,不可以0或非0的整数替代true和false,这点和C语言不同。
*数据类型转换包含基本数据类型转换和强制数据类型转换(易造成数据丢失)。
6.运算符
包含:算术运算符
赋值运算符
比较运算符(关系运算符)
逻辑运算符
位运算符
三元运算符
格式:
(条件表达式)?表达式1:表达式2;
如果条件为true,运算后的结果是表达式1;
如果条件为false,运算后的结果是表达式2;
运算符优先级
7.分支语句
if-else语句
*多重if语句:
如果年龄大于60岁,提示老年;年龄介于40-60之间,提示中年;年龄介于18-40之间,提示少年;18岁以下,提示童年。
int age=25;
if(age>60){
System.out.println(“老年”);}
else if(age>40){
System.out.println(“中年”);}
else if(age>18){
System.out.println(“少年”);}
else{System.out.println(“童年”);}
*嵌套if语句
if(条件1){if(条件2){
代码块1}
else{代码块2}}
else{代码块3}
switch语句
switch(表达式){
case 常量1:
语句1;
break;
case 常量2:
语句2;
break;
… …
case 常量N:
语句N;
break;
[default:
语句;
break;]
}
注意:switch(表达式)中表达式的返回值必须是下述几种类型之一:int, byte, char, short, 枚举, 字符串;
case子句中的值必须是常量,且所有case子句中的值应是不同的;
default子句是任选的;
break语句用来在执行完一个case分支后使程序跳出switch语句块;
8.循环语句
for 循环
语法格式
for (int i=0;i<10;i++初始化表达式; 布尔值测试表达式; 更改表达式){
语句或语句块;
}
应用举例
求1-100之间整数的和:
public class ForLoop {
public static void main(String args[]){
int result = 0;
for(int i=1; i<=100; i++) {
result += i;
}
System.out.println("result=" + result);
}
}
while 循环
语法格式
[初始化语句]
while( 布尔值测试表达式){
语句或语句块;
[更改语句;]
}
应用举例
public class WhileLoop {
public static void main(String args[]){
int result = 0;
int i=1;
while(i<=100) {
result += i;
i++;
}
System.out.println("result=" + result);
}
}
do/while 循环
语法格式
[初始化语句]
do{
语句或语句块;
[更改语句;]
}while(布尔值测试表达式);
应用举例
public class WhileLoop {
public static void main(String args[]){
int result = 0, i=1;
do{
result += i;
i++;
}while(i<=100);
System.out.println("result=" + result);
}
}
break语句
作用:跳出循环
语法:for(int i=1;i<=10;i++){
if(条件){
break;}
}
continue语句
作用:跳出循环体剩余语句执行下一次循环
示例:打印1-10之间所有偶数
for(int=1;i<=10;i++){
if(i%2!=0){continue;}
System.out.println(i);
}
1.编写程序,输入一个数判断其是偶数还是奇数
2.编写程序,输入一个年份判断其是否是闰年
3.编写程序,输入一个数判断其是否是素数
4.编写程序,从1循环到150并在每行打印一个值,另外在每个3 的倍数行上打印出“tripple” 。
5.编写程序:求1到100之间所有偶数的和。用while和do- while语句分别完成。
6.编写程序:从键盘读入个数不确定的整数,并判断读入的正数和负数的个数,输入为0时结束程序。
三、java数组
主要内容:数组概述、一维数组声明、数组元素的引用、数组元素的默认初始化、创建数组、数组初始化、多维数组、多维数组初始化、数组排序
1.数组概述
数组是多个相同类型数据的组合,实现对这些数据的统一管理。
数组中的元素可以是任何数据类型,包括基本类型和引用类型。
数组属于引用类型,可以理解为对象(Object),数组中的每个元素相当于该对象的成员变量。
数组一旦初始化,长度不可变。
2.一维数组声明
一维数组的声明方式: type var[] 或 type[] var;
例如:
int a[];
int[] a1;
double b[];
Mydate []c; //对象数组
单独声明数组时不能指定其长度(数组中元素的数), 例如: int a[5]; //非法
3.数组元素的引用
Java中可以使用关键字new创建数组对象
定义并用运算符new为之分配空间后,才可以引用数组中的某个元素;
每个数组都有一个属性 length 指明它的长度,例如:a.length 指明数组 a 的长度(元素个数)
数组元素的引用方式:数组名[数组元素下标]
数组元素下标可以是整型常量或整型表达式。如a[3] , b[i] , c[6*i]
数组元素下标从0开始;长度为n的数组合法下标取值范围: 0 至 n-1
4.数组元素的默认初始化
数组是引用类型,它的元素相当于类的成员变量,因此为数组分配空间后,其中的每个元素也被按照成员变量同样的方式被隐式初始化。例如:
public class Test {
public static void main(String argv[]){
int a[]= new int[5];
System.out.println(a[3]); //a[3]的默认值为0
}
}
5.创建数组
Java中使用关键字new 创建数组对象
int[] scores=new int[]{99,88,77,55,22};
*分配空间
语法:数组名=new 数据类型[数组长度]
例:int scores[];
scores=new int[5];
合并:int scores[]=new int[5];
6.数组初始化
动态初始化:数组定义与为数组元素分配空间并赋值的操作分开进行。
静态初始化:在定义数组的同时就为数组元素分配空间并赋值。
补充:数组名.length用于获取数组长度
*输出scores数组的元素
for(i=1;i<=scores.length;i++){
System.out.println(scores[]);
}
7.二维数组
声明并分配空间:数据类型[][]数组名=new数据类型[行数][列数]
int[][] num=new int[2][3];
或:int[][] num;
num=new int[2][3];
8.使用Arrays类操作java中数组
(使用Arrays类必须使用import java.util.Arrays;
public class Account{}导入包)
(1)排序:Arrays.sort(数组名);
(2)将数组转换为字符串:Arrays.toString(数组名);
(3)foreach操作数组:语法:for(元素类型 元素变量:遍历对象)
{执行代码}