java复习前三章

一、初识Java

  • A: java语言概述
    * a: Java是sun公司开发的一门编程语言,目前被Oracle公司收购,编程语言就是用来编写软件的。
    * b: Java的应用
    * 开发QQ、迅雷程序(桌面应用软件)
    * 淘宝、京东(互联网应用软件)
    * c: Java的擅长
    * 互联网:电商、P2P等等
    * 企业级应用:ERP、CRM、BOS、OA等等
    大数据
    * d: Java语言平台
    * JavaSE(标准版)部分,基础班学习JavaSE,JavaSE并不能开发大型项目。
    * JavaEE(企业版)部分,就业班学习JavaEE,学习完JavaEE部分就可以开发各种大型项目了。

  • A: 常用的DOS命令
    * a: 打开Dos控制台
    * win+r–cmd–回车
    * b: 常用dos命令
    * cd… : 退回到上一级目录
    * cd\ : 退回到根目录
    * cd tools: 进入tools文件夹
    * d: : 回车 盘符切换
    * cd d:\234 :进入d盘的234文件夹,再切换盘符(d:)才能进入d:\234
    * dir : 列出当前目录下的文件以及文件夹
    * cls : 清除屏幕
    * ipconfig: 查看本机的相关网络配置
    * c: dos控制台运行记事本程序
    * D:>C:\windows\notepad.exe
    * 还可以省略“.exe”后缀,例如:D:>C:\windows\notepad

  • A: JDK的下载
    * a: 官网 http://www.oracle.com/cn/index.html
    * b: 演示下载流程

    • B: JDK的安装

      • a: 傻瓜式安装
        • 双击安装程序,然后一路next即可(但是不建议)
      • b: 安装的推荐方式
        • 安装路径不要有中文或者特殊符号如空格等。
        • 所有和开发相关的软件最好安装目录统一。
          • 举例:我的JDK安装路径
            • D:\develop\Java\jdk1.7.0_72
        • 当提示安装JRE时,可以选择不安装。建议还是安装上。
          * D:\develop\Java\jre\
        • 安装路径中没有的文件夹,会自动创建
    • C: 验证安装是否成功

      • a:通过DOS命令,切换到JDK安装的bin目录下。
        • D:\develop\Java\jdk1.7.0_72\bin
      • b:然后分别输入javac和java,如果正常显示一些内容,说明安装成功
  • A: JDK与JRE的关系
    * a: JDK:它是Java开发运行环境,在程序员的电脑上当然要安装JDK;
    * b: JRE:Java Runtime Environment它是Java运行环境,如果你不需要开发只需要运行Java程序,那么你可以安装JRE。例如程序员开发出的程序最终卖给了用户,用户不用开发,只需要运行程序,所以用户在电脑上安装JRE即可。
    * c: JDK包含了JRE。

    • B: 跨平台特性
      • a: 平台指的是操作系统 (Windows,Linux,Mac)。
      • b: Java程序可以在任意操作系统上运行,一次编写到处运行
      • c: 实现跨平台需要依赖Java的虚拟机 JVM (Java Virtual Machine)

① 第一个Java程序1

public class K1_case1 { // 程序框架 
	public static void main(String[] args){ //main方法框架
		 System.out.println("Hello World!");
		 System.out.println("明天下午要结课考试!");// 输出语句
		 System.out.println("今天下午要默写笔记!");
		 System.out.println("************************"); // 输出后换行
		 System.out.print("今天下午要默写笔记!");// 输出后不换行
		 System.out.print("今天下午要默写笔记!");// 在上一行后面输出
	}
}

▶▶▶运行结果

Hello World!
明天下午要结课考试!
今天下午要默写笔记!
************************
今天下午要默写笔记!今天下午要默写笔记!

② 转义字符2📕

// P25练习3
public class K2_TranferSymbol {
	public static void main(String[] args) {
		System.out.println("\t乐淘xxxx\n" +
		"商品名称\t购买数量\t商品单价\t金额\n" +
		"红米手机\t5\t799\t799\n" +
		"华为手机\t5\t799\t799\n");
	}
}

▶▶▶运行结果

		   乐淘xxxx
商品名称	 	购买数量 	商品单价	 	金额
红米手机 	5 			799 		799
华为手机 	5 			799 		799

二、变量、数据类型和运算符

  • A: 关键字(了解一下)
    * a: 定义
    * 是被Java语言赋予特殊含义,具有专门用途的单词,比如之前接触的class,int,double均为Java已经预设好的
    * b: 特点
    * 组成关键字的字母全部小写(代码中的蓝色部分) ,注意String不是关键字
    * c: 常见关键字
    * public static void class等
    * d: 注意事项
    * goto与const是Java中的保留字,即没有赋予特殊含义却仍被Java占用的单词,类似Editplus这样的高级记事本,针对关键字有特殊的颜色标记,非常直观

  • A: 常量的定义
    * 常量就是不变的数据量, 在程序执行的过程中其值不可以发生改变

    • B: 常量分类
      • a: 整数类型
        • 十进制表示方式:正常数字 如 13、25等
        • 二进制表示方式:以0b(0B)开头 如0b1011 、0B1001
        • 十六进制表示方式:以0x(0X)开头 数字以0-9及A-F组成 如0x23A2、0xa、0x10
        • 八进制表示方式:以0开头 如01、07、0721
      • b: 小数类型
        • 如1.0、-3.15、3.168等
      • c: 布尔类型
        • true、false
      • d: 字符类型
        • 如’a’,‘A’, ‘0’, ‘家’
        • 字符必须使用’’ 包裹,并且其中只能且仅能包含一个字符。
      • e: 字符串类型
        • 字符串String类型是一种引用类型,我们先了解作为常量类型的使用方式
        • 如“我爱Java”,“0123”,“”,“null”
        • 字符串必须使用“”包裹,其中可以包含0~N个字符。

1、变量
变量是一个数据存储空间的表示,它是存储数据的基本单元。【表示数据的名称,变量的值是变化的】
声明语法:数据类型 变量名[=值]; [ ]代表可无。 即为:数据类型 变量名;
使用必须声明且赋值。
变量名不能重复声明,命名要遵循编码规范中的命名规范。

// 1、声明:根据数据类型在内存中申请一块空间 
int age; 
// 2、赋值:将数据存储至对应的内存空间 
age=18; 
// 1+2可以合并成以下语句: 
// int age=18; 
// 3、使用:将数据修改至对应的内存空间 
int age2=age+1;

命名规则(只能包含下面的内容,不能有其它内容)
* 1: 英文大小写字母
* 2:数字字符
* 3:$和_
* 注意事项
* 1:数字不能开头
* 2:不可以使用关键字
* 3:严格区分大小写,不限制长度
* 4:起名时,尽量达到见名知意
包名:多单词组成时所有字母均小写,使用.连接 aaa.bbb.ccc
 * b: 类名&接口名:大驼峰式 AaaBbbCcc
 * c: 变量名&方法名:小驼峰式 aaaBbbCcc
 * d: 常量名:多单词组成是所有字母均大写,使用_连接AAA_BBB_CCC

2、★常用数据类型

  1. int 整型 占4字节 1
  2. double 【双精度浮点型】小数 占8字节
  3. char 字符型 单引号,单个字符 ‘男’ 占 2字节
  4. String 字符串型 双引号,一串字符 “你今天好乖啊!” “男”

3、★ 运算符

  1. 赋值运算符 (=):★赋值运算符是右边的先运算,再把值给左边的变量
    a=2,a+=3 ; // a=a+3
    +=,-=,*=,/=,%=
  2. 算术运算符:(+、一、*、/、%)
  3. ★自增/自减运算符:变量名++;【相当于score=score+1】;变量名–;【相当于score=score-1】;
    自增运算:
    ++ 变量:先进行自增,后进行运算。
    变量++ :先进行运算,后进行自增。
    自减运算:
    –变量:先进行自减,而后进行运算处理
    变量-- :先进行运算,而后进行自减处理。
  4. 关系运算符:(>、>=、<、<=、==、!=),结果是布尔值
    “a”.equals(s) 判断”a“是否与s变量的值相等,结果是布尔值

4、表达式
概念:运算符号与操作数(数据/变量)的组合;
比如:a+3; a=2+3*b/2+6 * (7/3);

5、数据类型转换⚕
数据类型转换是为了方便不同类型的数据之间进行运算。

  1. ★自动类型转换:只能放大转化;int→double
  2. ★强制类型转换:丢失数据/没有四舍五入
    ★语法:(要转化成的数据类型) 变量名;

6、★布尔类型
boolean类型表示真假,两个值为true和false。
关系运算符可以用来比较大小、高低、多少等,比较后的结果是boolean类型。

7、★Scanner类输入信息⚕
当程序需要从键盘获取用户输入的命令或数据时,可以通过Scanner类【用于扫描输入文本的实用程序】实现从控制 台获取键盘上输入的信息。
三步走:

  1. 导入Scanner包:import java.util.Scanner;
  2. 使用Scanner包中的输入方法:Scanner xxx = new Scanner(System.in);
    XXX 就是自己要用的扫描器(自定义)的名字,遵循命名规范。一般用sc/input/scan。
  3. 要求从控制台输入内容:
    输入整数:xxx.nextInt();
    输入小数:xxx.nextDouble();
    输入字符串:xxx.next()
    注意不能读两个由空格或符号隔开的单词

案例

① 变量声明

public class K1_variable {
	public static void main(String[] args) {
		int age; // 1、声明
		age=18; // 2、赋值
		int age2=age+1; // 3、使用
		System.out.println(age2);
	}
}

② 数据类型

public class K2_DataType {
	public static void main(String[] args) {
		// 1-1、数据类型:String 变量名:姓名 name 值:"王燚"
		String name="王燚";
		// 1-2、数据类型:int 变量名:年龄age 值:18
		int age=18;
		// 1-3、数据类型:double 变量名:分数score 值:69.95
		double score=69.95;
		// 1-4、数据类型:char 变量名:性别sex 值:'男'
		char sex='男';
		// 输出信息
		System.out.println(name+'\t'+age+"\t"+score+"\t"+sex);
	}
}

▶▶▶运行结果

王燚 	18 	69.95

③ 赋值运算符★

public class K3_Operator1 {
	public static void main(String[] args) {
		int a; //声明变量a
		// 1+2=a; // 赋值运算符的错误示范
		a=1+2; // 正确
		System.out.println(a); // 输出变量a的值
		System.out.println("a"); // 输出字符串"a"
		int age1,age2=19; // 连续声明语句
		age1=17;
		System.out.println(age1+"\n"+age2)
	}
}

④ 算术、比较运算符

public class K3_operator2 {
	public static void main(String[] args){
		int a=9; //声明变量a并赋值
		int b=3; //声明变量b并赋值
		
		// 算术运算符
		System.out.println(
			"a+b的结果是:"+(a+b)+"\n"+
			"a-b的结果是:"+(a-b)+"\n"+
			"a*b的结果是:"+(a*b)+"\n"+
			"a/b的结果是:"+(a/b)+"\n"+
			"a%b的结果是:"+(a%b));
			
		// 比较运算符:结果是true/false
		System.out.println("a>b的结果是:"+(a>b));
		System.out.println("a!=b的结果是:"+(a!=b));
		
		//自增、自减运算符
		double score=69.95;
		score--; // 自减运算符:相当于socre=score-1;
		System.out.println("自减后分数:"+score);
		
		int age=18;
		age++; // 自增运算符:相当于age=age+1;
		System.out.println("自增后年龄:"+age);
	}
}

⑤ 数据类型转换

public class K4_dataTypeTrans {
	public static void main(String[] args) {
		// 1、自动转化
		int radius=3; // int 4字节
		double pi=3.1415; // double 8字节
		// int length=2*pi*radius; //报错,不能int转double
		double length=2*pi*radius; //圆的周长2piR
		System.out.println("自动转化后的length的值:"+length); //结果为double类型
		
		//2、强制转换:
		System.out.println("强制转化后的length的值:"+(int)length);
		
		// ✘✘✘了解可以转化即可:需要将字符转化成数值,字符串不可
		char sex='男';
		System.out.println("sex转换成int的结果是:"+(int)sex);
		System.out.println("sex转换成double的结果是:"+(double)sex);
	}
}

⑥ 输3门成绩算平均/差

// P39示例3
public class ComputeScore{
	public static void main(String[] args){
		Scanner input=new Scanner(System.in);
		System.out.print("HTML的成绩是:");
		int html=input.nextInt(); //HTML分数
		System.out.print("SQL的成绩是:");
		int sql=input.nextInt();
		System.out.print("JAVA的成绩是:");
		int java=input.nextInt(); //JAVA分数
		int dif; //分数差
		double avg; //平均分
		System.out.println("--------------------------------");
		System.out.println("HTML\tSQL\tJAVA");
		System.out.println(html+"\t"+sql+"\t"+java);
		System.out.println("--------------------------------");
		dif=html-sql; //计算HTML和SQL的成绩差
		System.out.println("HTML和SQL的成绩差:"+dif);
		avg=(html+sql+java)/3; //计算平均分
		System.out.println("3门课的平均分是:"+avg);
	}
}

三、Scanner输入

① 输入序号姓名分数

// 1、导入Scanner包
import java.util.Scanner;
public class inputKnow {
	public static void main(String[] args){
		// 2、使用Scanner包中的输入方法
		Scanner input =new Scanner(System.in);
		System.out.print("请输入序号:"); // 向控制台输出
		// 3-1、要求从控制台输入整数
		int order=input.nextInt(); //输入序号
		System.out.print("请输入姓名:"); // 向控制台输出
		// 3-2、要求从控制台输入字符串
		String name=input.next(); //输入姓名
		System.out.print("请输入分数:"); // 向控制台输出
		// 3-3、要求从控制台输入小数
		double score=input.nextDouble(); //输入分数
		System.out.println(name+"的序号为:"+order+"分数为:"+score);
	}
}

② 取数字的个十百千位

public class k3_case1 {
	public static void main(String[] args) {
		int a=12345;
		int ww=a/10000; // 取万位数1
		int qw=a/1000%10; // 取千位数2
		int bw=a/100%10; // 取百位数3
		int sw=a/10%10; // 取十位数4
		int gw=a%10; // 取个位数5
	}
}

③ 输入生日,取年月日

public class k3_case2 {
	public static void main(String[] args) {
	/*
	要求:
	定一个日期,用变量date:值是你自己的生日格式:20010903 
	要求:用变量及算术运算符获得日期的年月日,输出到控制台,格式为:
	"日期date的年份为:xx" 
	"日期date的月份为:xx" 
	"日期date的号数为:xx" 
	并且要求做判断:月份,日期必须是有效的。加上循环【循环判断】 
	*/
	int date=20051228; //变量声明:数据类型 出生日期=值; 
	int year=date/10000; //取得年份,赋值给声明变量year 
	int month=date/100%100; //取得月份 
	int day=date%100;
	// 按照输出格式输出内容
	System.out.println(
		"日期date的年份为:"+year+"\n"+
		"日期date的月份为:"+month+"\n"+
		"日期date的号数为:"+day);
	}
}

④ 输入半径/高,算圆锥体积

import java.util.Scanner;
public class K1_case3 {
	public static void main(String[] args) {
		Scanner dh=new Scanner(System.in); // 创建扫描器
		System.out.print("请输入圆锥的半径:"); //输入提示
		int Radius = dh.nextInt(); //输入半径
		System.out.print("请输入圆锥的高:"); //输入提示
		int Height = dh.nextInt(); //输入高
		// 体积公式:pi*r*r*h/3
		double v = 3.1415*Radius*Radius*Height/3;
		System.out.print("半径为"+Radius+"高为"+Height+"的圆锥的体积是:"+v);
		dh.close();
	}
}

⑤ 输入长宽,算长方形面积

// 1、导入Scanner包 
import java.util.Scanner;
public class K1_case4 { 
	public static void main(String[] args){
		// 2、使用Scanner包中的输入方法 
		Scanner input =new Scanner(System.in);
		// 向控制台输出 
		System.out.print("请输入正方形的长度:");
		// 3、要求从控制台输入 
		int length=input.nextInt(); 
		System.out.print("请输入正方形的宽度:");
		// 3、要求从控制台输入 
		int width=input.nextInt(); 
		//4、用完关闭不会有警告。
		input.close(); 
		// 正方形的面积 = 长*宽 
		int area=length*width;
		System.out.println("长方形的面积是:"+area); 
	}
}

⑥ 交换牌📕

public class homework1 {
	public static void main(String[] args) { 
		int first = 10; //存储第一个整数
		int second = 8; //存储第二个整数 
		int third; //中间变量
		
		/*显示互换前的数*/ 
		System.out.println("输出互换前手中的纸牌:"); 
		System.out.println("左手中的纸牌: " + first); 
		System.out.println("右手中的纸牌: " + second);

		/*互换这两个数*/ 
		third = first; 
		first = second; 
		second = third;
		
		/*显示互换后的数*/ 
		System.out.println("\n输出互换后手中的纸牌:"); 
		System.out.println("左手中的纸牌: " + first); 
		System.out.println("右手中的纸牌: " + second);
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值