j1

j1.数据类型

1.1float和long类型的赋值操作

public class Test1 {

	public static void main(String[] args) {
		
		/**
		 * 第一个赋值:
		 * 为什么这个情况下可以呢
		 * 因为默认的整数类型都是int
		 * 又因为int类型比float类型所占的字节空间小
		 * 所以是可以直接赋值的
		 * 
		 * 第二个赋值:
		 * 不可以的原因是因为
		 * 小数默认类型都是double类型
		 * 又因为double类型字节长度比float大,
		 * 随意不能直接进行赋值
		 * 
		 * 思考:
		 * 	long是8个字节
		 * 	float是4个字节
		 * 
		 * 如果我把long类型的数据赋值给float
		 * 能成功吗?
		 * 记住:浮点型的字节存储和整形的字节存储是不一样的
		 * 		所以浮点型的字节空间不能直接跟整形进行比较
		 * 
		 * float的取值范围:-3.4E38----3.4028235E38
		 * long的取值范围:-9223372036854775808~9223372036854775807 
		 * 
		 * 通过对比发现,float类型他的取值范围要远远大于long类型
		 * 所以这样的赋值是没有问题的
		 * 
		 */
		float a = 15;
		float b = 15.0f;
		
		float c = 250L;
	}

}

1.2.char类型的赋值

-	char类型打印字符和数字的区别
-	编码表的衍变
常用字符与ASCII代码对照表
为了便于查询,以下列出ASCII码表:第128255号为扩展字符(不常用)

ASCII码		键盘		ASCII 码		键盘		ASCII 码		键盘		ASCII 码	键盘
27			ESC			32		  SPACE			33		  !			34		"
35			#			36		   $			37		  %			38		&
39			'			40		   (			41		  )			42		*
43			+			44		   '			45	   	  -			46		.
47			/			48		   0			49		  1			50		2
51			3			52		   4			53		  5			54		6
55			7			56		   8			57		  9			58		:
59			;			60		   <			61		  =			62		>
63			?			64		   @			65		  A			66		B
67			C			68		   D			69		  E			70		F
71			G			72		   H			73		  I			74		J
75			K			76		   L			77		  M			78		N
79			O			80		   P			81		  Q			82		R
83			S			84		   T			85		  U			86		V
87			W			88		   X			89		  Y			90		Z
91			[			92		   \			93		  ]			94		^
95			_			96		   `			97		  a			98		b
99			c			100		   d			101	      e			102		f
103			g			104		   h			105		  i			106		j
107			k			108		   l			109		  m			110		n
111			o			112	   	   p			113		  q			114		r
115			s			116		   t			117		  u			118		v
119			w			120		   x			121		  y			122		z	
123			{			124		   |			125		  }			126		~

1.3.强制类型转换之内存中到底做了什么

-  强制类型转换
-  强制类型转换的结果与取出
public class Test3 {
	public static void main(String[] args) {
		byte b1 = 3;
		byte b2 = 4;
		
		byte b3 = (byte) (b1 + b2);
		
		
		//有没有问题?有问题如何解决?结果是多少呢?
		byte  by = (byte) 130;

		
		System.out.println(b3);
		System.out.println(by);//-126;
	}
}

1.4 逻辑运算符

& AND 并且 true&true 结果为true

| or 或 true|false 结果为true

^ 异或 true^true 结果为false true^false 结果为true

! 非 !ture 结果为false

​ 短路运算符

&& 只要前面结果为false就直接返回false不在往后面执行

|| 只要前面结果为true就直接返回true不在往后面执行

package bigdata;

public class text1 {
public static void main(String[] args){
	int a=10;
	int b=2;
	System.out.println(a&b);
	System.out.println(a|b);
	System.out.println(a^b^b);

    一个数字同时异或另外一个数字两次,得到的结果是他本身
	
	
	
}

1.5 三目运算符

定义:通过判断第一个关系表达式,然后选择执行后面的两个表达式

package test;
/*
三目运算符:通过判断第一个关系表达式,然后选择执行后面的两个表达式
怎么比较三个数中的最大值

*/
public class test7 {
    public static void main(String[] args) {
	int a=120;
	int b=50;
	int c=8;	
	System.out.println(a>b?(a>c?a:c):(b>c?b:c));
	
	System.out.println(a>b&&a>c?a:(b>c?b:c));	
	int d=a>b?a:b; 	
    System.out.println(d>c?d:c);	
    	
    	
    	
}
}

1.6 键盘录入:

//键盘录入
// sc.next();   接收一行数据
// sc.Int()     接收一个int类型的值
// sc.nextBoolean() 接收一个布尔值
// sc.nextByte()   接收一个字节
// sc.nextLine()   接收一行数据   也就是一行字符串
public class test8 {
    public static void main(String[] args) {
	Scanner sc =new Scanner(System.in);
	System.out.println("请输入第一个数字");
	int a=sc.nextInt();

	System.out.println("请输入第二个数字");
	int b=sc.nextInt();
	System.out.println("请输入第三个数字");
	int c=sc.nextInt();
	System.out.println(a+b+c);
	int d=(a>b&&a>c)?a:(b>c?b:c);
	System.out.println("您输入的三个数中最大值为"+d);
	
	
	
	
}
}

流程控制语句

–顺序结构

代码执行就是顺序

从上到下,从左到右

–选择结构

判断语句if

if(表达式){

执行语句

}

在if里面 这个括号里面的表达式是一个boolean类型的.

想要使用boolean类型,第一种,直接给他传一个boolean类型.

package com._51doit.day03;

import java.util.Scanner;

public class practise3 {
public static void main(String[] args) {
//	int  a=6;
//	int  b=8;
//	int  max=b;
//	if(a>b){
//		max=a;
//		
//	}
//	System.out.println("输出的最大值为"+max);
    Scanner sc=new  Scanner(System.in);	
//	int  a=1;
//	int  i=6;
    System.out.println("请录入学生A的成绩");
	int  A=sc.nextInt();
	System.out.println("请录入学生B的成绩");
	int  B=sc.nextInt();
	System.out.println("请录入学生C的成绩");
	int  C=
	if(A>B){
			System.out.println("A的成绩高");
	}else{
		System.out.println("B的成绩高");
	}
	
}
}

package com._51doit.day03;

import java.util.Scanner;

public class practise5 {
public static void main(String[] args) {
	Scanner sc=new Scanner(System.in);
  System.out.println("请输入第一个数字");
  System.out.println("请输入第二个数字");
  System.out.println("请输入第三个数字");
  int a= sc.nextInt();
  int b= sc.nextInt();
  int c= sc.nextInt();
  if(a>b&&a>c){
	  System.out.println(a);
  }else if (b>c) {
   System.out.println(b);	
}else {
	System.out.println(c);
}
  
  
}
}

switch(表达式short,byte,int,char,jdk1.7的有string)

case value1:value值只能是常量不能是变量

​ 执行语句

​ break;

case value2:

​ 执行语句

​ break;

package com._51doit.day04;

import java.util.Scanner;

public class practise2 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入一个数字");
		int i = sc.nextInt();
		switch (i) {
		case 1:
			System.out.println("星期一");
			break;

		case 2:
			System.out.println("星期二");
			break;

		case 3:
			System.out.println("星期三");
			break;

		case 4:
			System.out.println("星期四");
			break;

		case 5:
			System.out.println("星期五");
			break;

		case 6:
			System.out.println("星期六");
			break;

		case 7:
			System.out.println("星期日");
			break;
		default:
			System.out.println("请输入合法数字");
			break;

		}

	}

}

–循环结构 for循环格式

for(初始化语句;判断语句;控制语句){

循环语句

}

初始化语句:干的事情,就是做一个循环的初始化值,这个值可以随这循环的变化而变化 初始化的循环从第几次开始

判断语句 返回是boolean值如果返回true那么就执行循环语句 如果是false就退出

控制语句 初始化语句中的值会在控制语句进行的自增或者自减其实就是控制循环次数的

package com._51doit.day04;

//import java.util.Scanner;

//import org.omg.Messaging.SyncScopeHelper;

public class practise7 {
public static void main(String[] args) {
//	Scanner sc=new Scanner(System.in); 
//	int a = 0;
//	int b=0;
//	int c=0;
// for (int i= -5; i <5; i++) {
//	if (i<0) {
//    a=i+1;
//	}if (i==0) {
//	b=i+1;	
//	}if (i>0) {
//	c=i+1;
//	}
//	System.out.println(a);
//	System.out.println(b);
//	System.out.println(c);
//}
 
  for (int i = 1; i <2001; i++) {
//	if (i%5==0) {
//		System.out.println(i);
//	}
//	System.out.println("-------------");
//	if (i%2==0&&i%3==0 ) {
//		System.out.println(i);
//	}
// if ((i%4==0)&&(i%100!=0)||(i%400==0)) {
//	System.out.println(i);
//}
	  
	  
	  
}
}
}

执行顺序:

–初始化变量值

–走到判断语句,对初始化变量进行判断

–如果判断语句返回为true,那么执行循环体语句

–执行完循环体语句以后,执行控制语句

–控制语句执行完毕,回到步骤2一次执行

–直到判断语句返回false为止

–如果判断语句是一个无限循环

for(中间什么也没有或者加true为无限循环)

while循环格式

初始化语句

while(判断语句){

​ 循环体语句;

​ 控制语句;}

package bigdata;
//打印1--100的奇数个数;
public class text1{
public static void main(String[] args) {
	int i=1;
	int sum=0;
	while (i<=100) {
		sum++;
		i+=2;
		
	}
	System.out.println(sum);
}
}

package day;
//do ...while循环的使用
public class text1 {
public static void main(String[] args) {
	 int a=0;
	 int b=0;
	 do{
		 b++; 
		 a+=3;
	 
	 if(b%6==0){
		 a-=5;
	 } 
	 }while(a<100);
		 
	 
	 System.out.println(b);
	 
}
}

for循环中,他的初始化变量,在使用完之后,就直接被销毁,作用域仅局限与for循环内部使用

在while循环中,初始化循环的结束而消失的,而会一直存在,知道该方法或该类运行完毕

** 循环的选择**

在确定循环次数到底是多少次的情况下,我们一般选择while循环

确定了循环次数的情况下,尽量选择for循环

双for循环

外层循环控制行数

内层循环控制列数

package day;
//打印倒三角
public class text9 {
	public static void main(String[] args) {
		for (int i = 6; i >0; i--) {
			for (int j = 0; j <i; j++) {
				System.out.print("*");
			}
			System.out.println();
		}
	}
}

结束流程的三个关键字

break:switch循环语句中使用 (可以跳出当前单层循环 继续执行循环外的代码)[break cannot be used outside of a loop a switch]

continue:循环语句中使用,单独使用无意(跳过本次循环,执行下次循环)[continue cannot be used outside of a loop]

return:结束循环 或者给方法返回一个值(结束所有运行代码)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
电子图书资源服务系统是一款基于 Java Swing 的 C-S 应用,旨在提供电子图书资源一站式服务,可从系统提供的图书资源中直接检索资源并进行下载。.zip优质项目,资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松copy复刻,拿到资料包后可轻松复现出一样的项目。 本人系统开发经验充足,有任何使用问题欢迎随时与我联系,我会及时为你解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(若有),项目具体内容可查看下方的资源详情。 【附带帮助】: 若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步。 【本人专注计算机领域】: 有任何使用问题欢迎随时与我联系,我会及时解答,第一时间为你提供帮助,CSDN博客端可私信,为你解惑,欢迎交流。 【适合场景】: 相关项目设计中,皆可应用在项目开发、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面中 可借鉴此优质项目实现复刻,也可以基于此项目进行扩展来开发出更多功能 【无积分此资源可联系获取】 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。积分/付费仅作为资源整理辛苦费用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值