JavaLearning_3

Java内容的复习补充练习

学习java的第四周,坚持就是胜利

文章目录

  • Java内容的复习补充练习
  • 学习内容
  • 标识符补充
  • 计算机字符编码
  • 数据类型补充
  • 变量
  • 运算符
  • 程序流程控制
  • 总结


学习内容

java
知识扩展


标识符补充

标识符的使用
1.标识符:凡是自己可以起名字的地方都叫标识符。
比如:类名、变量名、方法名、接口名、包名…

2.标识符的命名规则:

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

  1. Java中的名称命名规范:

包名:多单词组成时所有字母都小写:xxxyyyzzz
类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ

1:在起名字时,为了提高阅读性,要尽量有意义,“见名知意”。
2:java采用unicode字符集,因此标识符也可以使用汉字声明,但是不建议使用。


计算机字符编码

一、在数据类型中出现的:
(位 bit 最小的单元) 1 byte=8 bits
字节 byte 机器语言的单位
在java中,字节是最小的单位。
二、常见的编码
常见的有 ASCII 编码 OEM 字符集等,此类编码的特点是:字符集都是和具体的编码方案绑定在一起
有点像通过一一映射的关系,只是通过简单的查找表的方式。
故出现了Unicode,而UTF-8则是在互联网上使用的最多的一种Unicode的实现方式。(注意:UTF-8并不是等于Unicode,只是一种实现方式)
Unicode定义了一个更为庞大且全球通用的字符集,而每个字符具体如何储存,则需要字符编码的方案。
因此在使用出,出现了乱码后,就应该从字符的编码方式正确分析。

数据类型补充

String类型变量的使用

  1. String属于引用数据类型,翻译为:字符串
  2. 声明String类型变量时,使用 " "
  3. String可以和8种基本数据类型变量做运算,且运算只能是连接运算:+
  4. 运算的结果仍然是String类型

变量

一、变量按照数据类型来分:

基本数据类型:
	整型:byte \ short \ int \ long
	浮点型:float \ double
	字符型:char
	布尔型:boolean


引用数据类型:
	类(class) ---(String)
	接口(interface)
	数组(array)

二、变量的分类:按声明的位置的不同:

可分为成员变量和局部变量

三、基本数据类型之间的运算规则:

不包含boolean类型的。

  1. 自动类型提升:
    结论:当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。
    byte 、char 、short --> int --> long --> float --> double

    特别的:当byte、char、short三种类型的变量做运算时,结果为int型

  2. 强制类型转换:
    自动类型提升运算的逆运算。
    1.需要使用强转符:()
    2.注意点:强制类型转换,可能导致精度损失。

class Test {
	public static void main(String[] args) {
		
		double d1 = 12.9;
		int i1 = (int)d1;//把double转化为int类型
		System.out.println(i1);

		long l1 = 123;
		short s2 = (short)l1;

		int i2 = 128;
		byte b = (byte)i2; //int-->byte
		System.out.println(b);

	}
}

说明:此时的容量大小指的是,表示数的范围的大和小。比如:float容量要大于long的容量

四、变量的使用

  1. java定义变量的格式:数据类型 变量名 = 变量值;

  2. 说明:
    ① 变量必须先声明,后使用
    ② 变量都定义在其作用域内。在作用域内,它是有效的。换句话说,出了作用域,就失效了
    ③ 同一个作用域内,不可以声明两个同名的变量


运算符

int x = 1;
int y=1;
if(x++== 2 & ++y==2){ //&逻辑与
x =7;
}
System.out.println(“x=”+x+",y="+y); //x=7,y=1

int x = 1,y = 1;
if(x++== 2 && ++y==2){ //&&短路与
x =7;
}
System.out.println(“x=”+x+",y="+y); x=7,y=2

JavaLearning_3_第1张图片
JavaLearning_3_第2张图片
关于运算符的优先级:
自己写代码中,想谁先运算,就加()即可


程序流程控制

if-else语句

int x = 4;
int y = 1;
if (x > 2) {
	if (y > 2) 
		System.out.println(x + y);
	System.out.println("XCbG");
} else
System.out.println("x is " + x);

switch语句
1、switch(表达式)中表达式的值必须是下述几种类型之一:byte,short,
char,int,枚举 ,String;
2、 case子句中的值必须是常量,不能是变量名或不确定的表达式值;
同一个switch语句,所有case子句中的常量值互不相同;
3、 break语句用来在执行完一个case分支后使程序跳出switch语句块;如
果没有break,程序会顺序执行到switch结尾
4、 default子句是可任选的。同时,位置也是灵活的。当没有匹配的case时,执行default

if 和 switch语句的对比

if-else语句适用性更广,而switch语句效率高;
使用switch-case的,都可以改写为if-else。反之不成立。

循环语句题目:
从键盘读入个数不确定的整数,并判断读入的正数和负数的个数,输入
为0时结束程序。
无限循环:while(true) , for(;;)

class PositiveNegative { 
	public static void main(String[] args) {
	 Scanner scanner = new Scanner(System.in);
	 int positiveNumber = 0;//统计正数的个数
 	 int negativeNumber = 0;//统计负数的个数
 	 for(;;){ //while(true){
 	 System.out.println("请输入一个整数:");
	 int z = scanner.nextInt();
 	 if(z>0)
 	 positiveNumber++;
 	 else if(z<0)
 	 negativeNumber++;
 	 else
 	 break; //重要!以结束循环
 } 
	System.out.println("正数的个数为:"+ positiveNumber);
	System.out.println("负数的个数为:"+ negativeNumber); } }

嵌套循环(多重循环)
设外层循环次数为m次,内层为n次,则内层循环体实际上需要执行m*n次。
例如:九九乘法表
外层循环即 控制行,内层循环控制列

特殊关键字的使用:break、continue

break 语句
break语句用于终止某个语句块的执行
{ ……
break;
……
}


break语句出现在多层嵌套的语句块中时,可以通过标签指明要终止的是
哪一层语句块
label1: { ……
label2: { ……
label3: { ……
break label2;
……
} } }

public class BreakTest{
public static void main(String args[]){
for(int i = 0; i<10; i++){ 
if(i==3)
break;
System.out.println(" i =" + i);
}
System.out.println("Game Over!");
} }   //0,1,2,Game Over!

continue 语句:
continue只能使用在循环结构中;
continue语句用于跳过其所在循环语句块的一次执行,继续下一次循环;
continue语句出现在多层嵌套的循环语句体中时,可以通过标签指明要跳过的是哪一层循环。

public class ContinueTest {
	public static void main(String args[]){
		for (int i = 0; i < 100; i++) {
		if (i%10==0)
		continue;
System.out.println(i); } } }//0,1,2,3.。。。。,9,11,12.。。。
							//不打印10和10的倍数的数

补充:
//return 并非专门用于结束循环的,它的功能是结束一个方法。
当一个方法执行到一个return语句时,这个方法将被结束。
//与break和continue不同的是,return直接结束整个方法,不管
这个return处于多少层循环之内。
//continue是终止本次循环,break是终止本层循环。
//break、continue之后不能有其他的语句,因为程序永远不会执行其后的语句


总结

本周过后,学习java已过一个月。进度当然要比文章写的内容要快很多,写文章也还是为了方便日后复习。同时也要准备时间来实习找工作,希望自己能保持这份学习java的热情。加油!!

请多多支持,你们的点赞~ 评论
是作者更新的动力!

			 人生苦短,我用python~

你可能感兴趣的:(学习计划,java)