Java基础学习2-变量、运算符、开发环境

一、变量

1、变量的本质:

(1)内存中的一个存储空间。
(2)另一种说法:程序运行过程中,其值可以发生改变的量。
(3)每一个变量存储空间是相互独立的。

    通过内存地址取数据:
               1. 十六进制的数,不好记 。
               2. 内存地址是随机分配的
2、 三大要素

1.)变量名:内存空间的名称。作用相当于内存地址。快速的找到内存空间,从而取出数据。
2.)变量值:其中存储的数据。其值可以发生变化。
3.)变量类型:存储的数据的类型。向内存申请空间。不同类型的数据,分配到的内存空间大小不一。

数据类型:
	基本数据类型(8)
		数值:
		  整数:
			byte  1个字节  8bit   -128 ~127   
			short 2个字节  16bit  -2^15~2^15-1   -32768~32767
			int   4个字节  32bit  -2^31~2^31-1   -2,147,483,648~2,147,483,647
			long  8个字节  64bit  -2^63~2^63-1
		  小数:
			float  4个字节  指数占8位
			double 8个字节  指数占11位	
		字符:存储单个字符  ‘a’'0'  '#' '男' ‘ ’
			char  2个字节   16bit  0-2^16-1   0-65535
			         	'A'----65 
			         	'a'----97 
				        '0'----48
			可以运算的,可以比较的    ‘a’~ 'z'  'A'+32
	 	布尔:
			boolean  存储真或者假 true false
	引用数据类型
		字符串  String  存储0个或多个字符  “a”“”"abc"   "0123"
	选择数据类型:
		是否会参与运算?
		年龄   酸奶的价格3.5    性别‘男’  新闻详情   是否登录成功
		身份证号:String   电话号码:String  密码:字符串

实际演示:

public class Demo01{
	public static void main(String[] args){
		byte b=3;//byte [-128~127]
		short s=-32763; 
		int a=2147483647;//过大的整数
		
		long ll=2147483647;//过大的整数: 2147483648

		float f=2147483648f;
		double d=2147483648L;

		//int -->byte,short 大字节-->小字节  如果数据无损失,就正常编译
		//int --->long   如果在int范围之内,正常编译,如果超过int范围,需要在数字末尾添上L
		//byte<short  char<int<long--->float--->double  正常编译的
		//自动类型转换  :1、数据类型要兼容  2、小转大

		char c='a';//  97
		int ca=c;
		System.out.println(ca);

		//------------------------------------
		int num=2147483647;
		int num2=1;
		int num3=num+num2;      //整型溢出
		System.out.println(num3);

		byte bb=3+7;
		byte b1=127;
		byte b2=(byte)(b1+1);     //从int转换到byte可能会有损失
		System.out.println(b2);
		short s1=23;
		//short s2=s1-2;

		//变量之间的运算,再赋值,数据有可能会有损失,在byte,short时是会编译出错的,int编译正常,运行有误
		//强制类型转换 :1、数据类型要兼容  2、大转小
			//有数据损失的风险,所以要求程序强制编码  :(转换的类型)
		double dd2=3.5;
		int n=(int)dd2;
		System.out.println(n);
		
		int n1=23;
		double dd3=n1;
		int n2=(int)dd3;
		
		double dd4=n1+3.5;//表达式的结果 其实是表达式中范围最大的那种类型

		/*char c='a';//  97
		int ca=c;
		System.out.println(ca);*/
		int ca2=ca-32;
		char cd=(char)ca2;
		System.out.println(cd);

	
		int nnn=23;
		nnn+=2;   //nnn=nnn+2;
		System.out.println(nnn);
	
		//int sum+=23; //int sum; sum=sum+23;
		
		byte b5=12;
		//b=b+12;
		b5+=12;//编译正常
	}

在这里插入图片描述

(1)变量名:

1.)命名规则:
1. 只能由字母、数字、下划线、$组成,不能数字开头。
2. 不能使用关键字 class true等。

3. 小驼峰法:除第一个单词外,每个单词首字母大写 stuName stuJavaScore
4. 见名知意 age name
5. 区分大小写 name Name

(2)变量的定义和使用:
  1. 声明变量:向内存申请空间
    语法:数据类型 变量名;

  2. 赋值 :变量名=值;

     前两部可以合二为一: 数据类型  变量名=值;
    
  3. 使用 :通过变量名访问变量值

     字面常量:整数,默认是int    小数,默认是double
    

//练习: 手机信息 :品牌:华为 价格:2999.9元 是否打折中:true, 颜色:白。

public class phone{
    public static void main(String[] args){
        String model="华为";
        char color='白';
        double price=2999.9;
        boolean zhe=true;
        System.out.println("手机信息:"+"\n品牌:"+model);
        System.out.println("价格:"+price+"元");
        System.out.println("是否打折:"+zhe+"\n颜色:"+color);
    }
}

在这里插入图片描述

二、运算符

1、赋值运算符
    变量名=表达式;
	符合赋值运算符  += -= *=  /=
2、算术运算符
	+ - * /(整除) %(求余)
	++:   ++在后  先用再加
	       ++在前  先加再用
	-- :  与++类似
3、关系运算符
	>  <  ==   >=   <=   !=
  char类型是可以比较的:
      判断一个字符是不是大些字母?
  浮点型在内存存储可能是不精确,所以不适合==
      不能连写 a>b >c
	  ==等于
  关系表达式 的结果都是boolean类型
4、逻辑运算符
	连接多个boolean表达式
	逻辑与  && :同真为真,遇假则假
	逻辑或 ||  :有真则真,同假则假
	逻辑非 !:  取反

	&&和||有短路功能  

    优先级:!>算术运算符>关系运算符>&&、||>赋值运算符
	先运算,后比较,再连接,最后赋值
	推荐使用(),显式提升优先级。   
5、位运算符
	以二进制的形式运算
	>> 右移  3>>1  -----1      相当于除法
	<< 左移  3<<1  -----6      相当于乘法
	&   3&5
	     判断奇偶数  :&1     获取二进制最末位数字  
	     逻辑运算:连接两个条件,同真为真,遇假则假
		和逻辑与&& 区别,就是不支持短路	 
	|   3|5  7
	    对于任意一个数字,|1,可以把末位置成1
	    逻辑运算:有真则真,同假则假
		和逻辑与|| 区别,就是不支持短路
	^ 异或  不同为1,相同为0	
	   3^5  011 101  110--6
		6^5  110  ^ 101   011--3
	 一个数,对另外一个数进行两次异或运算,就能得到他本身。----加密,解密

三、练习

1、拆分四位数。

public class fj{
    public static void main(String[] args){
      int n=1234;
      int g=n%10;
      int s=n%100/10;
      int b=n/100%10;
      int q=n/1000;
      System.out.println("个位:"+g+"、十位:"+s+"、百位:"+b+"、千位:"+q);
    }
}

在这里插入图片描述2、今天周日(7),12天后周几

import java.util.Scanner;
public class week {
	public static void main(String[] args) {
		System.out.println("请输入今天是星期几:");
		Scanner sc = new Scanner (System.in);
		int weeks = sc.nextInt();
		System.out.println("请输入所需多少天后是周几的天数:");
		int day = sc.nextInt();
		if((day + weeks)>=7) {
			System.out.println(day + "天后是周" +(day + weeks) % 7 );
		}
		else {
			System.out.println(day + "天后是周" + (day+weeks));
		}
	}
}

在这里插入图片描述

#从控制台(键盘)获取数据	
java.lang包下的内容是不需要单独导入的。
先导包  java.util.Scanner;
Scanner   input=new Scanner(System.in);
接收一个整数nextInt()
接收一个浮点数nextDouble();
接收一个字符串next()
接收boolean nextBoolean()
但是,没有char类型  c
 ==  基本数据类型之间,比较的数值 
 == 引用数据类型之间,比较的地址
String 类型的数据,比较值相等  变量.equals(变量)

四、开发环境

 文本编辑器 : vscode、 notepad++ 、editplu、s sublime
 IDE:继承开发环境  编写,编译,运行
 Eclipse(免费)  MyEclipse(收费) IDEA(收费)	

在官网下载安装与自己jdk所适应的Eclipse版本

  1. 创建一个项目
  2. src–创建类–编写代码
  3. Ctrl+S–自动编译
  4. 运行 Ctrl+F11
 字体放大:Window-Preferences-输入font---Basic--Text     font
  • 10
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第1页。计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第1页。课堂教学计划表 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第1页。 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第1页。 课程名称 Java程序设计 教师姓名 专业班级 授课时间 授课地点 学时数 8 授课题目 §2Java语言开发基础 教学目标及要求 知识目标 掌握Java语言的基本组成; :・掌握数据类型、变量运算符及表达式; :・掌握三种控制结构; 技能目标 :・培养学生规范编码和良好的程序设计风格; :・能够应用Java语言进行程序设计; 数据类型、运算符、字符串、数组等知识在编程过程中能熟练、准确应用; ・:・能熟练、准确地应用分支、循环、跳转三种流程执行过程; 教学重点 :・标识符命名规那么、数据类型与运算符; : 嵌套ifelse语句的用法; 教学难点 :・数值类型转换(强制转换、隐式转换)的用法; :・Switch语句的用法; 工程描述 :・工程1:猜数字游戏 教学方法 问题导引法:通过给学生提出实际编程中出现的问题来引入教学内容,使学生在主动分析、讨论和解决问题的过程中掌握所学知识; :・案例分析法:通过演示典型案例来讲解相关知识和技术的具体使用过程,使学生在具体的应用环境中加深对概念的理解; :・任务驱动法:通过完成工程中的各个任务逐步增强实版技能; 教学过程设计 一、新课导入与工程展示 :・首先通过提问、讨论等互动的形式引入课程新知识; : 然后通过演示本章工程来激发学生的学习兴趣,增强学生学习的积极性、主动性; 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第2页。计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第2页。教案正文 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第2页。 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第2页。 二、工程任务分解 ・:・带着学生分析本章工程并对工程进行任务分解,各工程分解任务如下: 工程1:猜数字游戏 ,任务1:确定变量 /任务2:选择数据类型 /任务3:确定表达式 /任务4:循环猜数,并统计次数 三、任务分析 :・根据工程及任务的描述和要求,对工程的各个任务进行分析,然后总结出完成该任务所需要的知识、技能和主要操作步骤; 四、相关知识点 :・针对各个任务分析阶段得到的知识和技能,并结合本章知识和技能目标对相关知识点进行详细讲解和说明; 五、任务实施 :・该阶段以完成各个任务为目的,教师利用相关知识和技能以演示的方式为学生详细讲解每个任务的完整实现过程; :・同时,该阶段要求学生进行跟随练习,以加深对知识和技能的理解和掌握; 六、技能拓展 :・在保证学生掌握了各个任务所涉及的基本知识和技能的基础上,再通过介绍一定的附加知识并辅导学生完成指定的"技能拓展任务",最终使学生对所学知识到达举一反三,融会贯通的学习目的; 七、指导与评价 对学生的任务实施过程进行指导,并对其中出现的问题进行总结,给出评价; 课后作业 :・完成课后相关习题; 课后分析 :・主要问题: 面向对象思、想的培养; 一、新课导入与工程展示思考:回顾C语言学过的基本语法知识? 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第3页。计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第3页。运行各个源程序,为学生演示本章工程各个任务的实现效果。 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第3页。 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第3页。 二、工程任务分解本章工程可以划分为以下主要任务: 工程1:猜数字游戏任务1:确定变量任务2:选择数据类型任务3:确定表达式 任务4:循环猜数,并统计次数 三、任务1・1:确定变量 任务分析 猜数游戏中需要计算机产生随机数,还需要用户输入猜测的数字。 本任务就是要确定用哪些变量来保存这些数据,并且如何命名变量。 相关知识点 (1)标识符 Java中的包名、类名、方法名、参数名、变量名等都需要用一个符号来标识,这个符号就称为标识符,java中标识符的命名规那么如下: 组成:可由大小写字母、数字、下划夜(_)和美元符号($) 组成。 开头:必须以字母、下划线或美元符号($)开头。 字母:严格区分字母

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Juvenile少年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值