基础语法(一)

一、关键字、保留字、标识符

关键字(keyword)
java语言被赋予了特殊含义的字符串,有专门的用途
官网:https://docs.oracle.com/javase/tutorial/java/nutsandbolts/_key
保留字(reserved word)
现有的java版本中尚未使用,但以后可能 使用的关键字
goto、const
标识符(identifier)
其实就是起的名字, 对我们使用的变量,类,方法等等

  1. 由26个英文字母大小写,0-9、 _、或$
  2. 数字不能开头
  3. 不可以使用关键字和保留字,但可以包含关键字和保留字
  4. java中严格区分大小写,长度无限制标识符不能包含空格

标识符规则(命名规则) — 必须遵守,否则报错
命名规范 — 约定俗称,建议遵守

  1. 包名:多个单词组成时所有字母 小写(例如: net.csdn.boss.dao)
  2. 类名,接口名:多个单词组成 时,所有单词首字母大小(例如: EmpService)
  3. 变量名、方法名:多个单词组成 时,第一个单词首字母小写,从 第二个开始每个单词首字
    母大写 (例如:userName, passWord)
  4. 常量名:所有字母大写,多个单词每个单词使用下划线连接(例 如:SEX_MALE、
    SEX_FEMALE)

二、变量、数据类型

2.1、变量-

变量:
用来临时保存数据,是内存空间的一个区域的表示。数据不同,变量类型不同。类似于不同的罐子存储不同的东西。

2.2、常用的数据类型

2.2.1数据类型分类
java中对于每一种数据都定义了明确的具体的数 据类型(强类型语言),在内存中分配了大小不 同的内存空间

基本类型数据—直接存储信息
数值类型:
整数:byte(字节)、short(短整型)、int(整型*)、long(长整型)
浮点数:
double(双精度*):精度是float的2倍(常用)
float(单精度):尾数可以精确到7位数
java种常用默认用double 声明时常量必须添加F 或者f;

非数值类
char(字符)----char类型是可以进行运算的,因为都对应的Unicode码
表现的形式:
引号括起来的单个字符(‘’)例如:charc = ‘a’ char sex = ‘缴男’
java中还允许使用转义字符“\”,字符转变为特殊的字符常量:例如:char c = ‘\n’换 行
直接使用unicode值 例如:’\uXXXX’ .XXXX代表十六进制整数例如: ‘\u000a’表示
\n
三种编码方式:
ASCII:8个二进制位,256中状态,一个 字节(byte)每个状态对应一个符号,就是256个符号,从00000000到 11111111,ACII码一共规定了128个字 符,因为只占用了7位,最前面的1位统 一规定为0 。
Unicode:将世界上所有的字符都纳入其 中,unicode统一规定,每个符号用三个或四个字节表示 。
UTF-8使用中可变长度的编码方式,可以 使用1-6个字节表示一个符号,根据符号 不同而变化字节长度,可动态提高效率,使用较多。
boolean(布尔类型*)

引用型数据类型---间接存储信息---变量保存真实数据的地址,通过地 址间接获取数据		
		class(类) ---- string在这里
		Interface(接口)
		Array(数组)

.2.3变量使用的步骤

1&2:声明、赋值、使用

package BaseDemo; 
public class TestDemo01 { 
public static void main(String[] args) { 
int i;//声明 
i = 10;//赋值 
System.out.println(i);//使用 
	} 
}
/*问题:
	输出java课程考试最高成绩:98.5
	输出最高分学员姓名:张三
	输出最高分性别:男
分析:
	1、输出数据需要变量存储,需要选择变量的个数和数据类型
	2、根据题意:
	成绩(score):double
	姓名(name):string
	性别(sex):char
	3、实现
*/
package BaseDemo; 
/*** 问题: 
*输出java课程考试最高成绩:98.5
*输出最高分学员姓名:张三 
*输出最高分性别:男 
* @author Administrator 
* */
*public class TestDemo01 { 
public static void main(String[] args) {
 /** 分析:1、输出数据需要变量存储,需要选择变量的个数和数据类型 		
 		2、根据题意: 成绩(score):double 
 					姓名(name):string 
 					性别(sex):char 
 */ 
	 double score = 98.5; 
	 String name = "张三"; 
 	char sex = '男';
 	System.out.println("java课程考试最高成绩" + score); 
 	System.out.println("最高分学员的姓名:" + name); 
 	System.out.println("最高分学院的性别:" + sex); 
 	} 
 }

三、赋值运算符&算数运算符

/*问题:
	-学员王浩的Java成绩是80分,学员张萌的Java成绩与王浩的相同,输出张萌的成绩
分析:
	变量2个,数据类型一个 int,赋值。
**/
package BaseDemo; public class TestDemo03 {
 public static void main(String[] args) { 
 int wScore = 80; 
 int zScore = wScore; 
 System.out.println("张萌的成绩为:" + zScore); 
	 } 
 }

算数运算符:

基本算数运算符:+ - * / %(取余) 
+:对于字符串来说是连接,对于数值类型来说是运算符号
/*
问题:
从控制台输入学员王浩3门课程成绩,编写程序实现
 (1)Java课和SQL课的分数之差
 (2)3门课的平均分
分析:
	1、3门课程---3个变量
	2、从控制台输入数据 ---Scanner
	3、求平均分以及分数差 在需要2个变量
*/
package net.csdn.Demo1; 
import java.util.Scanner; 
/**从控制台输入学员王浩3门课程成绩,编写程序实现
 *(1)Java课和SQL课的分数之差 STB 
 *(2)3门课的平均分
 */ 
 public class ClassExer030401 { 
 public static void main(String[] args) {
  //1.通过Scanner 录入成绩 
  Scanner sc = new Scanner(System.in); 
  System.out.println("请输入学员王浩的STB的成绩:"); 
  int stbScore = sc.nextInt(); 
  System.out.println("请输入学员王浩的Java的成绩:"); 
  int javaScore = sc.nextInt(); 
  System.out.println("请输入学员王浩的SQL的成绩:"); 
  int sqlScore = sc.nextInt(); //2.输出成绩 
  System.out.println("STB的成绩是:" + stbScore); 
  System.out.println("Java的成绩是:" + javaScore); 
  System.out.println("SQL的成绩是:" + sqlScore); 
  System.out.println("-----------------------"); 
  System.out.println("STB\t\t" + "Java\t" + "SQL"); 
  System.out.println(stbScore+ "\t \t" + javaScore + "\t\t" + 
  sqlScore );
  System.out.println("-----------------------"); 
  //3.输出java和sql的成绩差 用if判断 以免输出为负数 
  int different; 
  if(javaScore >= sqlScore){ 
 	 different = javaScore - sqlScore; 
 	 System.out.println("Java和SQL的成绩差为:" + different); 
	  }else if (javaScore < sqlScore){ different = sqlScore - javaScore;
	   System.out.println("Java和SQL的成绩差为:" + different); 
	   	}else{
	   	System.out.println("请输入合法的数据哦"); }
	   	//4.得到平均分并输出 
	   	double avg = (javaScore + sqlScore + stbScore)/3.0; 
	   	System.out.println("3门课程的平均分为:" + avg); 
	   	//关闭资源,解除占用资源
	   	sc.close();
	   	
	    }
}
/*
*根据天数(46)计算周数和剩余的天
*/
package BaseDemo; 
import java.util.Scanner;
 /*** 根据天数(46)计算周数和剩余的天数 
 *
 * @author Administrator 
 * 
 * 
 */  
 public class BaseDemo3 { 
 public static void main(String[] args) { 

 Scanner sc = new Scanner(System.in); 
 System.out.println("请输入天数:");
 //控制台输入数据 
 int days = sc.nextInt();
 int week = days/7;//得到有多少周 用商 
 int remaindays = days%7;//得到剩余天数 取余 
 System.out.println(days+ "天一共有"+ week + "周加" + remaindays +"天"); 
 int days = 46; 
 int week = days/7;//得到有多少周 用商 
 int remaindays = days%7;//得到剩余天数 取余 
 System.out.println(days+ "天一共有"+ week + "周加" + remaindays +"天"); 
	 } 
 }
/*
已知圆的半径radius= 1.5,求其面积
*/
package BaseDemo; 
import java.util.Scanner; 
/*** 已知圆的半径radius= 1.5,求其面积 
* 输入圆的半径 求面积 周长 
* 
*  @author Administrator 
**/ public class BaseDemo4 {
 public static void main(String[] args) { 
	 Scanner sc = new Scanner(System.in); 
	 System.out.println("请输入圆的半径:"); 
	 double radius = sc.nextDouble(); 
	 double pi = 3.14; 
	 double area = radius*radius*pi; 
	 double girth = 2*radius*pi; 
	 System.out.println("半径为" + radius + "的面积为:" + area + ",周长为:" + girth );
	 double radius = 1.5;//半径 
	 double pi = 3.14;//圆周率Math.PI 
	 double area = radius * radius * pi;//面积 
	 double girth = 2 * radius * pi;//周长 
	 System.out.println("半径为" + radius + "的面积为:" + area + ",周长为:" + girth ); 
	 }
  }
package BaseDemo; 
import java.util.Scanner;
/***
需求:作业一:为抵抗洪水,战士连续作战89小时,编程计算共多少天零多少小时 
* @author Administrator *
* */ 
*public class HomeworkDemo1 { 
public static void main(String[] args) {
 Scanner sc = new Scanner(System.in); 
 int days =sc.nextInt();//通过键盘录入 得到作战时间 
 int day = days/24;//得到作战天数 
 int hours = days%24; 
 System.out.println("为抵抗洪水,战士连续作战了" + day + "天零" + hours + "小 时");
	 } 
 }
package BaseDemo; 
import java.util.Scanner;
//编写代码实现两个变量值交换,
int m = 3, n =5; 
public class HomeworkDemo2 {
	public static void main(String[] args) { 
	Scanner sc = new Scanner(System.in); 
	System.out.println("请输入第一个整数m:"); 
	int m = sc.nextInt();//通过键盘录入得到第一个数m 
	System.out.println("请输入第二个整数n:"); 
	int n = sc.nextInt();//通过键盘录入得到第二个数n 
	System.out.println("m,n交换前:" + m + ":" + n);
//输出mn与后面交换后做对比 
//需要交换2个变量的值需要一个中间变量来缓存 
	int temp = m; 
	m = n; 
	n = temp; 
	System.out.println("m,n交换后:" + m + ":" + n); 
	} 
}
package BaseDemo; 
import java.util.Scanner; 
//需求:今天是周二,100天以后是周几? 
//提升:键盘录入星期几,再次录入多少天后 在判断是周几 
public class HomeworkDemo3 { 
	public static void main(String[] args) {
	Scanner sc = new Scanner(System.in); 
	System.out.println("请输入今天是周几:"); 
	int today = sc.nextInt(); 
	System.out.println("请输入想要判断多少天后:");
	int day =sc.nextInt() ; 
	int week = day%7;//得到剩余的天数 
	//得到周几 :如果得到的剩余天数+本身自有的天数大于7的话 则再次取余 
	int afterHunDay = (today + week)%7;
	if(afterHunDay == 0) { 
		System.out.println("今天是周" + today + "," + day + "天以后是周末"); 
		}else { 
		System.out.println("今天是周" + today + "," + day + "天以后是周" + afterHunDay);
		 } 
	} 
}

在这里插入图片描述运算符的优先级

  1. 最高的优先级:小括号,即( )
  2. 最低的优先级:赋值运算符,即=
  3. 优先级顺序:算术运算符>关系运算符>逻辑运算符
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值